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

Вниз

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

 
sen   (2002-12-10 11:09) [0]

Добрый день.
В моей программе.
На событие запрос на закрытие формы canclose:=false.
Приложение закрывается только при щелчке на всплывающем меню ("закрыть"). Делаю application.terminate
При перезагрузке компа приложение закрываться не хочет (не дает перегрузить).
Вопрос: Как правильно отловить сообщение Windows для закрытия приложения.
Пробовал делать
if msg.message=wm_close then application.terminate;
Handled := True;

Последняя строка вообще странно влияет на закрытие приложения (оно становится незакрываемым даже через всплывающее меню) .
Кто - нибудь может помочь?


 
Song ©   (2002-12-10 11:11) [1]

WM_ENDSESSION/WM_QUERYENDSESSION
А на TForm.onCloseQuery придётся ещё флажок вводить.


 
sen   (2002-12-10 11:34) [2]

Спасибо, а какой флажок на TForm.onCloseQuery


 
Song ©   (2002-12-10 11:41) [3]

ну дык просто переменная типа Boolean, которую устаналиваете в сообщении WM_QUERYENDSESSION

Var Flag:Boolen=False;

а в TForm.onCloseQuery будет CanClose:=Flag;

В событии WM_QUERYENDSESSION установите Flag в True


 
sen   (2002-12-11 10:41) [4]

Добрый день
Не работает WM_QUERYENDSESSION
Написал следующее:

if msg.message=WM_QUERYENDSESSION

then
begin
Flag:=True;
Handled := True;
application.terminate;
end;
end;


procedure Ttemperaturaform.FormCloseQuery(Sender: TObject;
var CanClose: Boolean);
begin

canclose:=flag;
if flag then showmessage("true") else showmessage("false");
end;
procedure Ttemperaturaform.FormCloseQuery(Sender: TObject;
var CanClose: Boolean);
begin

canclose:=flag;
if flag then showmessage("true") else showmessage("false");
temperaturaform.hide;

end;

при попытке закончить сессию windows показывает false, т.е. flag остается в false
То же самое и в случае WM_ENDSESSION


 
Song ©   (2002-12-11 11:00) [5]

hands.sys...


 
sen   (2002-12-11 11:29) [6]

это что значит



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
1-86965
DDS
2003-01-17 10:03
2003.01.27
Я создаю VCL от Shape, что сделать, чтобы выполнялось OnClick


14-87029
MSLeks
2003-01-09 15:33
2003.01.27
Pascal - Help me please


4-87219
olden
2002-12-12 13:00
2003.01.27
как запретить комбобоксу реагировать на колесо мыши


4-87180
alex134
2002-12-09 22:18
2003.01.27
Глобальный контроль


14-87145
Феликс
2003-01-10 02:41
2003.01.27
В чем сила?