Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как созданный класс сделать дочерним классу 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.


Наверх

Титульная страница Поиск, карта сайта Написать письмо