Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.028 c
2-1156837256
тюбик
2006-08-29 11:40
2006.09.17
вывод версий


15-1156393558
vlgrig1961
2006-08-24 08:25
2006.09.17
Есть ли отдельно маленький редактор форм Delphi


15-1156396900
Александр Иванов
2006-08-24 09:21
2006.09.17
MS SQL Server 2005 Express Edition


15-1156425313
vain
2006-08-24 17:15
2006.09.17
Структура MP3 файла


2-1155498717
Handle
2006-08-13 23:51
2006.09.17
PopupMenu




   Наверх