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

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

не находит контрол на форме


Mikle ©   (2009-03-12 18:18:00) 

Здравствуйте.
Пишу программку, в которой объекты при активации должны динамически генерировать под себя интерфейс на панельке...
Генерируют, заполняют. При деактивации должны удалять созданные ими контролы. Удалются все кроме надписей (TLabel).
В сокрашённом виде это выглядит так:


control:=TLabel.Create(self);
control.Parent:=Form1;
control.Name:='mycontrol';
control:=Form1.FindChildControl('mycontrol'); {возвращает NIL}
control.Destroy;


Оно же работает с TEdit, TButton, TMemo и т.п. TLabel  ведь тоже наследник класса TControl, так почему же тогда не находит???

Да, ещё хотел спросить.. сначала вызывал не Destroy, а Free - ошибка не появлялась, а надпись оставалась.. т.е. метод Free - это класс функция? или она эквивалентна вызову процедуры FREE(myObject)?

Заранее спасибо за ответ)


Palladin   (2009-03-12 19:03:00) [1]

от того что он наслежник TGraphicControl наследником от TComponent он быть не перестает

Form1.FindComponent('mycontrol')


Mikle   (2009-03-12 19:01:00) [2]

хм.. вижу :(
но как же тогда обращаться к лэйблу? можно, конечно, хранить указатель на него, но так не интересно)) судя по тому что я увидел (если конечно туда смотрел) можно заюзать TStaticText вместо лэйбла (кстати я его раньше нигде не встречал..). но всё же) мне уже просто интересно, как же тогда динамически обращаться к наследникам TGraphicControl ???


Leonid Troyanovsky   (2009-03-12 18:56:00) [3]


> Mikle   (12.03.09 18:18)  

> тоже наследник класса TControl, так почему же тогда не находит?

Не там ищем, RTFM: TWinControl.Controls

--
Regards, LVT.


Медвежонок Пятачок   (2009-03-12 18:25:00) [4]

А после заглядывания внутрь FindChildControl посмотри на иерархию предков лэйбла.


Медвежонок Пятачок   (2009-03-12 18:24:00) [5]

Загляни внутрь и поймешь почему


Наверх

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