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

Вниз

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

 
Vazelin   (2006-08-06 19:57) [0]

Привет всем!
Как можно перехватить нажатие кнопки Х на форме?


 
Rial ©   (2006-08-06 20:10) [1]

Событие
OnCloseQuery


 
DprYg ©   (2006-08-06 20:14) [2]

А если имеется в виду после нажатия не закрывать форму, а делать еще что-то, то так:
Объявление
procedure WMSysCommand(var Msg: TWMSysCommand); message WM_SYSCOMMAND;
Реализация
procedure TForm1.WMSysCommand(var Msg: TWMSysCommand);
begin
 if Msg.CmdType = SC_CLOSE then ... else inherited;
end;


 
Zeqfreed ©   (2006-08-06 20:21) [3]

> Как можно перехватить нажатие кнопки Х на форме?


type
 TForm1 = class(TForm)
 private
   { Private declarations }
 public
   procedure WMClose(var Msg : TWMClose); message WM_CLOSE;
   procedure WMNCLButtonDown(var Msg : TWMNCLButtonDown); message WM_NCLBUTTONDOWN;
 end;

. . .

procedure TForm1.WMClose(var Msg: TWMClose);
begin
 if (Tag = 1) then ShowMessage("OMG!!! You hit the close button!");
 inherited;
end;

procedure TForm1.WMNCLButtonDown(var Msg: TWMNCLButtonDown);
begin
 if (Msg.HitTest = HTCLOSE) then
  Tag := 1
 else
  Tag := 0;

 inherited;
end;


 
Юрий Зотов ©   (2006-08-06 21:12) [4]

1. if Msg.CmdType and $FFF0 = SC_CLOSE...
2. А зачем вообще все это? Событие OnClose уже отменили?


 
Ketmar ©   (2006-08-07 10:49) [5]

> [4] Юрий Зотов ©   (06.08.06 21:12)

а так, видимо, интересней.


 
Desdechado ©   (2006-08-07 11:47) [6]

> А если имеется в виду после нажатия не закрывать форму,
> а делать еще что-то
А разве в FormClose нельзя прописать Action:=caNone ?



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

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

Наверх




Память: 0.47 MB
Время: 0.061 c
6-1138091589
Makhanev
2006-01-24 11:33
2006.09.17
получение MAC адресов сетевых карт в offline


15-1156707585
Loginov Dmitry
2006-08-27 23:39
2006.09.17
Вопреки ругани форумчан


4-1147882094
ChainikDenis
2006-05-17 20:08
2006.09.17
Опять принтер на RS232...


15-1155192384
VictorT
2006-08-10 10:46
2006.09.17
Первый блин. Моё первое видео в воздухе.


1-1155021622
Shaman_
2006-08-08 11:20
2006.09.17
Автоматический LOG программы