Главная страница
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.013 c
1-60206
2UT
2003-06-05 13:22
2003.06.19
Как правильно вызвать С-и функцию (DLL) из Delphi


14-60416
AlexRush
2003-05-28 11:51
2003.06.19
Природа человеческого разума


3-60073
Def
2003-05-28 17:22
2003.06.19
dbExpress не находит db2cli.dll


3-60033
Карелин Артем
2003-05-27 16:29
2003.06.19
Обновление запроса.


14-60411
Yakudza
2003-06-02 17:29
2003.06.19
Малколм Макдауэлл