Главная страница
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.019 c
1-60234
stream
2003-06-05 16:19
2003.06.19
загрузка курсора


3-60013
АТ
2003-05-27 04:24
2003.06.19
Вопрос по транзакции в InterBase


1-60132
ewgeny
2003-06-06 13:59
2003.06.19
Как вызвать в DLL метод объекта приложения ?


14-60380
Asrw
2003-06-02 20:47
2003.06.19
100+2 и т.д


1-60112
Klim Samgin
2003-06-06 08:38
2003.06.19
TThread