![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как перехватить сообщение закрытия окна?
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