![](/img/trans.png)
[英]How to tell if win32 c++ application lost focus after CTRL-ALT-DEL?
[英]How to detect ALT key press regardless focus in C++ Win32 application
我是否正確,在 C++ Windows 應用程序中檢測ALT鍵按下的唯一方法是鍵盤鈎子?
可能是多個子窗口,不能為每個子窗口設置WM_KEYDOWN
。
加速器"VK_MENU, some_id, VIRTKEY"
似乎不起作用。
沒有主菜單可以竊取ALT
功能。 普通 Win32,沒有 MFC。
找到了解決辦法:
// Main message loop:
while (GetMessage(&msg, nullptr, 0, 0)) {
if (msg.message == WM_SYSKEYDOWN && msg.wParam == VK_MENU) {
// single ALT key pressed, do something
}
if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg)) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.