|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Удалить динамически созданную кнопку
Создаю кнопку:
Код:
Butt:=TBitBtn.Create(nil); Butt.Parent:= clkForm; Butt.Width:=171; Butt.Height:=25; Butt.OnClick:=onBitClick; Код:
procedure TclkForm.OnBitClick(Sender: TObject); begin if Sender is TBitBtn then with (Sender as TBitBtn) do begin Free; end; end; |
#2
|
||||
|
||||
Тут, вроде, разобрался - походу проблема в том, что у созданной кнопки есть обработчик onClick. Это так?
И вот еще: создаю: Код:
CheckList:=TCheckListBox.Create(nil); CheckList.Parent:= clkForm; Код:
clkForm.FindComponent('CheckList').Free; |
#3
|
|||
|
|||
А это после вызова конструктора сделали?
Код:
CheckList.Name:= 'CheckList'; |
#4
|
||||
|
||||
Нет, не сделал. Спасибо за решение. Возник вопрос по ходу. Проблему я решил по другому. CheckList объявил в Private и вызываю CheckList.Destroy - все работает. Как будет более верно? Всмысле считается ли мой способ решения как бы корректным или все- же лучше так не делать?
|
#5
|
|||
|
|||
Цитата:
Из Delphi Help. =) |
#6
|
||||
|
||||
Цитата:
Ну что ж вернулся к вашему решению. Не пашет. Так создаю Код:
CheckList:=TCheckListBox.Create(nil); CheckList.Parent:= clkForm; CheckList.Width:=393; CheckList.Height:=217; CheckList.Top:=0; CheckList.Left:=552; CheckList.Font.Size:=12; CheckList.Name:='CheckList'; Код:
clkForm.FindComponent('CheckList').Free; |
#7
|
|||
|
|||
Надобно так вот создавать:
Код:
CheckList:=TCheckListBox.Create(clkForm); |
#8
|
||||
|
||||
Ну все, вроде работает. СПС.
|