Вниз
Скачать: 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.025 c
4-94231
DillerXX
2003-12-22 17:16
2004.02.29
Перезагрузка+БАТ


14-94191
Soft
2004-02-06 20:52
2004.02.29
До чего доводят игры


6-94060
BlackSun
2003-12-21 20:59
2004.02.29
Как скачать файл в поток?


7-94219
~GaMeRd~
2003-12-11 20:35
2004.02.29
Завершение работы Виндовс


1-94016
Mishenka
2004-02-15 11:37
2004.02.29
Выбор файлов из одного каталога?




   Наверх