Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.12.23;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.044 c
15-1195657961
oldman
2007-11-21 18:12
2007.12.23
Оказывается, вчера был Международный день ребенка


3-1182843398
DelphiN!
2007-06-26 11:36
2007.12.23
Округление даты-время в дату в SQL


15-1195942892
KilkennyCat
2007-11-25 01:21
2007.12.23
Рерихи зажигают.


2-1196410006
IvanB
2007-11-30 11:06
2007.12.23
ООП


15-1195586382
Германн
2007-11-20 22:19
2007.12.23
Автоматическое обновление WinXp SP1





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский