Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.12.23;
Скачать: CL | DM;

Вниз

Закрытие приложения   Найти похожие ветки 

 
webpauk ©   (2007-11-28 15:04) [0]

Подскажите какое сообщение обрабатывать, если программа закрывается из панели задач.
WM_SYSCOMMAND не реагирует...


 
Юрий Зотов ©   (2007-11-28 15:10) [1]

Видимо, все же WM_SYSCOMMAND, но для Application, а не для формы.
См. Application.OnMessage

Но проще - обработать OnClose(Query) главной формы.


 
webpauk ©   (2007-11-28 15:18) [2]


procedure TFormMain.FormCreate(Sender: TObject);
begin
 Application.OnMessage:=AppMessage;
end;

procedure TFormMain.AppMessage(var Msg: TMsg; var Handled: Boolean);
begin
 if Msg.message = WM_SYSCOMMAND then
 begin
   if Msg.wParam=sc_close then exit
   else inherited;
 end;
end;


сообщение обрабатывается...
только форма усё-равно закрываетца...


 
webpauk ©   (2007-11-28 15:19) [3]

 if Msg.message = WM_SYSCOMMAND then
 begin
   if Msg.wParam=sc_close then abort;
   inherited;
 end;


во!
так работает!!!


 
clickmaker ©   (2007-11-28 15:21) [4]


> webpauk ©   (28.11.07 15:19)

Msg.Result := 1;


 
KSergey ©   (2007-11-28 16:52) [5]

> webpauk ©   (28.11.07 15:19) [3]

жестоко...

Вообще-то справка есть, вот и clickmaker выжимку оттуда приводит.


 
Igor Zorkov ©   (2007-11-28 19:03) [6]

var
 Form1: TForm1;
 MayClose: boolean = false;

implementation

{$R *.dfm}

procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
 if MayClose = false then
 begin
   CanClose:= false;
 end else
   CanClose:= true;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 MayClose:= true;
 Close;
end;


 
Leonid Troyanovsky ©   (2007-11-28 20:27) [7]


> Igor Zorkov ©   (28.11.07 19:03) [6]

> var
>  Form1: TForm1;
>  MayClose: boolean = false;

Glob var - MD.


>  if MayClose = false then
>  begin
>    CanClose:= false;
>  end else
>    CanClose:= true

CanClose := MayClose

--
Regards, LVT.



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

Текущий архив: 2007.12.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.023 c
2-1196410006
IvanB
2007-11-30 11:06
2007.12.23
ООП


15-1195568496
Черный Шаман
2007-11-20 17:21
2007.12.23
За что садить программиста, если он всего лишь писал ПО?


15-1195764332
Mul
2007-11-22 23:45
2007.12.23
А есть какие-нибудь статьи у Анатолия Подгоретского?


15-1195904689
Petr V. Abramov
2007-11-24 14:44
2007.12.23
Болтовня по Skype


15-1195980167
Lang
2007-11-25 11:42
2007.12.23
C++ vs C#