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

Форма в компоненте - передача в компонент наступившего событя   Найти похожие ветки 

 
Бушин Сергей ©   (2004-02-18 14:44) [0]

Уважаемые гуру!

Что посоветуете. Имеем компонент, который вызывает немодально форму. пользователь по работал с формой и нажимает кнопочку, чтобы закрыть данное окно (кнопарь мой, см. далее). А окно не простое, а BorderStyle=bsNone.
Так вот вопрос! Как мне передать в компонент, что пользователь нажал на выход - в обработчик события компонента OnCloseMyForm?

Данный обработчик служит для той цели, что компонент может вызываться из многих мест в программе и соответственно нужно принимать решение что делать в том или другом случае.


 
Radionov Alexey ©   (2004-02-18 14:58) [1]

Метод Notification посмотри. Может быть через него будет лучше.


 
Бушин Сергей ©   (2004-02-18 16:11) [2]

По моему нет. Короче проблемма такая:


TMyComponent=class(TComponent)
...
function Execute:Boolean;
published
property OncloseMyForm:TNotifyEvent ...;
...

function TMyComponent.Execute:boolean;
begin
if not Assigned(MyForm) then
MyForm:=TMyForm.Create(nil);
MyForm.Show;
end;


Поработав с формой пользователь жмет на кнопочку CloseButton. (На всякий случай Свойства ModalResult нет).

Так как же передать в теле CloseButtonClick чтобы сработало OnCloseMyForm?


 
Плохиш   (2004-02-18 16:21) [3]

>Бушин Сергей © (18.02.04 16:11) [2]

Делаешь в TMyForm property OncloseMyForm: TNotifyEvent ...
и в Execute присваиваешь ему OncloseMyForm из TMyComponent, при закрытии формы вызываешь OncloseMyForm.


 
Бушин Сергей ©   (2004-02-18 16:34) [4]

Работает!!!



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

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



Память: 0.46 MB
Время: 0.018 c
4-94240
kiroykin
2003-12-18 14:08
2004.02.29
Как выловить событие file->save(save as...)


1-94001
REA
2004-02-16 17:14
2004.02.29
DrawText


7-94224
smu
2003-12-11 10:33
2004.02.29
Как правильно запустить программу, кот удалит которая ее удалит?


14-94161
Soft
2004-02-07 02:07
2004.02.29
Готовы ли вы продать свою душу за реальные деньги?


14-94090
syte_ser78
2004-02-10 14:37
2004.02.29
День святого Валентина




   Наверх