Вниз
Скачать: CL | DM;

О самоуничтожении объекта.   Найти похожие ветки 

← →
ZeroDivide ©   (2005-09-27 15:30) [0]

Ситуация следующая. Есть форма которая динамически создает и показывает фрейм

procedure TfmTemplateFramed.ShowFrame(FrameClass: TfrmTemplateMainClass;
 Parent: TWinControl);
...
 FFrame := FrameClass.Create(Self);
...
 FFrame.Parent := Parent;
...


, предроложим что на форме ни каких контролов больше нет и у фрейма Align = alClient. Чтобы закрыть фрем, на нем лежит кнопка bClose

Теперь вопрос в том, как бы по клику на этой кнопке уничтожить фрейм?


← →
Desdechado ©   (2005-09-27 15:59) [1]

динамически присвой кнопке внешний обработчик, который считает Sender и освободит твой фрейм


← →
umbra ©   (2005-09-27 16:03) [2]

В обработчике нажатия кнопки


(bClose.Parent as TfrmTemplateMainClass).Close


← →
Игорь Шевченко ©   (2005-09-27 16:05) [3]


> Теперь вопрос в том, как бы по клику на этой кнопке уничтожить
> фрейм?


Повесить на фрейм обработчик сообщения CM_RELEASE и по клику на кнопке отправлять фрейму это сообщение, по аналогии с TCustomForm.Release.

В обработчике сообщения написать Free;


← →
ZeroDivide ©   (2005-09-27 16:25) [4]

по аналогии с TCustomForm.Release
Угу... Я так и сделал. Похоже, единственный метод.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.025 c
14-1127409500
Мексиканец
2005-09-22 21:18
2005.10.16
Кино Митрофанова


14-1127645246
Федор
2005-09-25 14:47
2005.10.16
Пейджер


8-1117022740
plosion
2005-05-25 16:05
2005.10.16
MIDI


2-1127284857
raymond
2005-09-21 10:40
2005.10.16
Обход двумерного массива


2-1127322112
quadronik
2005-09-21 21:01
2005.10.16
логотип при загрузке программы




   Наверх