Главная страница
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.05 c
2-1156597801
Grant
2006-08-26 17:10
2006.09.17
Системы исчисления


15-1156100676
Некто
2006-08-20 23:04
2006.09.17
Не удаляется файл.


2-1156628488
vain
2006-08-27 01:41
2006.09.17
column в ListView


1-1154509872
McSSN
2006-08-02 13:11
2006.09.17
Виртуальный конструктор Create класса TComponent


2-1156687606
Jimmy
2006-08-27 18:06
2006.09.17
Как экономить ресурсы?