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

Как запустить процесс после закрытия формы?   Найти похожие ветки 

← →
AM   (2003-01-14 17:27) [0]

Всем привет!
Вот Есть у меня Главная родительская форма - fsMDIForm.
Как мне сделать, чтобы после закрытия всех его fsMDIChild запускалась процедурка. Только OnClose на дите не подходит так как надо запустить процедурку не перед закрытием а после.
Как это можно сделать?


← →
Skier ©   (2003-01-14 17:36) [1]

>AM
на OnClose
begin
if Последняя then begin
//Посылаем сообщение главной форме о запуске "процедурки"
PostMessage(MainForm.Handle, UM_EXEC_PROC, 0, 0);
end; //if
//.............
end;


← →
AM   (2003-01-14 17:58) [2]

А если не сложно вот есть у меня описанная в Unit-е главной формы процедура ClearAll();
Как тогда будет выглядеть процедура PostMessage(MainForm.Handle, UM_EXEC_PROC, 0, 0)?


← →
Skier ©   (2003-01-14 18:02) [3]

>AM
В главной форме ты должен написать
обработчик сообщения UM_EXEC_PROC.
Примерно так :

uses Messages;

const
UM_EXEC_PROC = WM_USER + 1;
//......................

TMainForm = clas(...)
private
procedure UMExecProc(var Message : TMessage); message UM_EXEC_PROC;
//..............
end; //TMainForm

//......................

procedure TForm1.UMExecProc(var Message: TMessage);
begin
//............
ClearAll;
//............
end;


← →
Skier ©   (2003-01-14 18:04) [4]

процедура PostMessage будет выглядеть так же :
PostMessage(MainForm.Handle, UM_EXEC_PROC, 0, 0)


← →
AM   (2003-01-14 18:09) [5]


Спасибо большое, Skier ©!!!



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

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



Память: 0.45 MB
Время: 0.011 c
14-72483
.:Grits:.
2003-01-01 16:25
2003.01.23
Help for Win32?


6-72442
Itap
2002-11-25 17:45
2003.01.23
Error (10057)


1-72282
Chubais
2003-01-10 10:16
2003.01.23
Изменение DecimalSeparator


3-72093
Big_Rom
2002-12-28 22:59
2003.01.23
Fastreport


1-72217
officeman
2003-01-13 20:36
2003.01.23
Нажимаю кнопку F9 и ...........




   Наверх