Главная страница
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.042 c
15-1156767373
Palladin
2006-08-28 16:16
2006.09.17
Коварный With


15-1156353969
imbalacedees
2006-08-23 21:26
2006.09.17
PHP опять вопрос )


1-1154613964
Bleed
2006-08-03 18:06
2006.09.17
Castalia 4 vs Delphi 2006, помогите ...


15-1156496813
Гарик
2006-08-25 13:06
2006.09.17
А что сделалаешь ты?


2-1157012712
Perf2k2
2006-08-31 12:25
2006.09.17
Как лучше подключаться к MySQL через Delphi