![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как созданный класс сделать дочерним классу TForm? [D7, XP]
allucard © (2007-04-16 10:32:00)Доброго времени суток.
Есть трабла.
Есть класс с некоторыми новыми свойствами.
Если этот класс описать внутри класса TForm1 выдаёт запрос:
'Field Form1.NewClass does not have a corresponding component. Remove the declaration'
NewClass - наследник класса TComponent.
Как создать свой класс чтоб он был дочерним у формы или другого обьекта?
(например как TButton у класса TForm когда бросаешь на форму кнопку).
Спасибо.
{RASkov} (2007-04-16 13:12:00) [1]> [7] deus krid (16.04.07 13:07)
> understand
А-а-а. understand. Промт перевел - Понять. :)
deus krid (2007-04-16 13:07:00) [2]2{RASkov}
я так понял, он все понял =) и шлет тебе хвалебные оды
(ундерстенд = understand)
{RASkov} (2007-04-16 12:54:00) [3]> [5] allucard (16.04.07 12:11)
> ундерстенд.
Это что?
allucard (2007-04-16 12:11:00) [4]
> {RASkov} (16.04.07 11:53) [4]
ундерстенд.
{RASkov} (2007-04-16 11:53:00) [5]> А что ему не нравилось?
А не нравилось, то что описанный класс/компонент в неявной секции паблишед, искался в DFM файле, а его там нет...
Kolan (2007-04-16 11:11:00) [6]> А что ему не нравилось?
Туда куда ты добавил среда добавляет компоненты, брошеные тобой на форму. Соотв она смотрит объявление есть, а «corresponding component»'а нет. Вот и ркгается.
> Ну не регистрируя, просто гдето мне кажется поле Owner нужно
> вбить этот компонент?
Ну как обычно. Объявил:
FMyField: TComponent;
В OnCreate, например, формы:
FMyField := TComponent.Create(Self);
Если это контрол, то не забудь Parent указать
allucard (2007-04-16 10:43:00) [7]
> Помести описание поля в другую секцию, например private.
Спасиб. Поместил. Не вылазит.
А что ему не нравилось?
> Как создать свой класс чтоб он был дочерним у формы или
> другого обьекта?
> Зарегистрировать? см. процедуру Register
А иначе. Ну не регистрируя, просто гдето мне кажется поле Owner нужно вбить этот компонент?
Kolan (2007-04-16 10:38:00) [8]Как создать свой класс чтоб он был дочерним у формы или другого обьекта?
Зарегистрировать? см. процедуру Register
'Field Form1.NewClass does not have a corresponding component. Remove the declaration'
Помести описание поля в другую секцию, например private.