![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
![]() Задана глобальная переменная
Код:
var bt: TButton; затем в какойто процедуре создаем несколько кнопок Код:
bt:= TButton.Create(Panel1); bt.Parent:= Panel1; bt.Name:= 'but1'; bt:= TButton.Create(Panel1); bt.Parent:= Panel1; bt.Name:= 'but2'; bt:= TButton.Create(Panel1); bt.Parent:= Panel1; bt.Name:= 'but3'; в другой процедуре нужно узнать если кнопкИ созданы то уничтожить их все Код:
if Assigned(bt) then FreeAndNil(bt); Как удалить but1, but2 ? Может мой подход в корне неверный и проще объявить сразу три переменные для кнопок? Но может возникнуть ситуация с созданием сотни динамических компонент, все их описывать поименно? |
#2
|
||||
|
||||
![]() Цитата:
Код:
var bt1, bt2, bt3: TButton; ... bt1:= TButton.Create(Panel1); bt1.Parent:= Panel1; bt1.Name:= 'but1'; bt2:= TButton.Create(Panel1); bt2.Parent:= Panel1; bt2.Name:= 'but2'; bt3:= TButton.Create(Panel1); bt3.Parent:= Panel1; bt3.Name:= 'but3'; ... FreeAndNil(bt1); FreeAndNil(bt2); FreeAndNil(bt3); UPD. Цитата:
Последний раз редактировалось poli-smen, 05.12.2014 в 12:52. Причина: Дополнил ответ |
Этот пользователь сказал Спасибо poli-smen за это полезное сообщение: | ||
Евгений79 (05.12.2014)
|
#3
|
|||
|
|||
![]() Так смущает то, что вариант с одной переменной тоже работает. Кнопки создаются, можно задать разные Caption положение цвет, и т.д. Присвоить обработчики событий.
Например в обработчике клика проверяю кто кликнул и соотвественно действия разные Код:
if (Sender as TButton).name = 'but1' then blabla1; if (Sender as TButton).name = 'but2' then toptop2; |
#4
|
||||
|
||||
![]() Цитата:
Цитата:
|
Этот пользователь сказал Спасибо poli-smen за это полезное сообщение: | ||
Евгений79 (05.12.2014)
|
#5
|
|||
|
|||
![]() Понятно.
Если зайти с другого конца. Т.к. владелец кнопок Panel1 можно как-то найти и уничтожить все его объекты? |
#6
|
||||
|
||||
![]() Цитата:
|
Этот пользователь сказал Спасибо poli-smen за это полезное сообщение: | ||
Евгений79 (05.12.2014)
|