Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как перехватить сообщение закрытия окна?


LeXaXaXa ©   (2006-07-10 18:27:00) 

Все не так просто, как вы думаете) Как перехватить обычное закрытие, я знаю - при этом приходит сообщение с кодом-константой sc_close. Но как перехватить закрытие окна нажатием правой кнопки на панельку с именем программы на панели задач и нажатие "Закрыть"??? При этом приходит не sc_close (которое, кстати, и при нажатии Alt+F4 выскакивает), да и вообще, не факт, что хоть что-то приходит...


atruhin   (2006-07-11 08:48:00) [1]

> [5] Юрий Зотов ©   (10.07.06 21:23)

Событие OnClose не приходит если например при открытой программе, завершить работу windows кратковременным нажатием кнопки не системнике.
По крайней мере в Delphi 6 не приходило.
Спасало WM_SYSCOMMAND WM_DESTROY


Юрий Зотов   (2006-07-10 21:23:00) [2]

А что, событие OnClose в главной форме уже отменили? Я что-то пропустил?


Leonid Troyanovsky   (2006-07-10 20:28:00) [3]


> LeXaXaXa   (10.07.06 18:27)  

>  не факт, что хоть что-то приходит...


Отчего ж не приходить-то?
Приходит  WM_SYSCOMMAND SC_CLOSE - окну Application.

Подсмотеть можно установив, например,
Application.HookMainWindow.

--
Regards, LVT.


sniknik   (2006-07-10 19:56:00) [4]

> Все не так просто, как вы думаете
все именно так как думаем мы... и мы думаем, что у тебя ошибка в коде.


LeXaXaXa   (2006-07-10 19:45:00) [5]

неа... не фурычит(


Мефисто   (2006-07-10 18:57:00) [6]

WM_DESTROY


Наверх

Титульная страница Поиск, карта сайта Написать письмо