Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.19;
Скачать: CL | DM;

Вниз

Virtual Key Сodes   Найти похожие ветки 

 
Alex-21   (2003-06-04 21:20) [0]

Как перехватить "Alt+F4"?
Я написал if Key = VK_LMENU + VK_F4 then..., но она по-моему не работает, не реагирует. Верно ли я написал? Или надо по-другому написать?


 
зфмуд_л   (2003-06-04 22:12) [1]

А надо только для твоего приложения или глобально? Если только для твоего, то проще всего обрабатывать OnCloseQuaery (вроде так пишется:), это событие возникает перед закрытием, то есть после нажатия Alt+F4.


 
Xoy   (2003-06-04 22:33) [2]

function AltKeyDown : boolean;
begin
result:=(Word(GetKeyState(VK_MENU)) and $8000)<>0;
end;

......

if (key = VK_F4) and (AltKeyDown = true) then begin
......
......
end;

как-то так


 
Palladin ©   (2003-06-04 22:47) [3]

имхо Alt-F4 так же как и Ctrl-Alt-Esc и Alt-TAB и тд есть системные hotkeys, ловить их нужно на соответствующих системных сообщениях

Alt-F4 ловится на WM_SysCommand
procedure WMGetSysCommand(var Message: TMessage); message WM_SYSCOMMAND;

if Message.WParam=SC_Close then
правда я не в курсе как крестик отличить от Alt-F4, может только GetKeyboardState проверить...

если же все нужно на глобальном уровне тот тут только hooks



Страницы: 1 вся ветка

Текущий архив: 2003.06.19;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.024 c
3-60055
Radimir
2003-05-27 17:33
2003.06.19
DataSource у ADOQuery


6-60296
msoftware
2003-04-17 11:14
2003.06.19
Передача STREAM по UDP протоколу


1-60171
ТОлег
2003-06-07 11:47
2003.06.19
Как скопировать один компонент в другой...


14-60346
Darrin
2003-06-02 13:10
2003.06.19
Возможноли отследить отработку процедур в Design-time?


1-60164
avlan
2003-06-07 06:40
2003.06.19
Ширина ячейки в StatusBar