2

我将如何捕获用户按Ctrl两次 ( Ctrl+ Ctrl) 全局。我希望能够隐藏我的应用程序窗口,然后在用户使用CtrlCtrl类似于 Google 快速搜索框的按键调用它时使其可见。用户可能将焦点放在不同的窗口上。我看过RegisterHotKey,但这似乎是为了MODIFIERS + character key除非我弄错了。

4

1 回答 1

4

要创建这样的热键,请执行以下操作:

ATOM hotkey = GlobalAddAtom("Your hotkey atom name");
if(hotkey) RegisterHotKey(hwnd, hotkey, MOD_CONTROL, VK_CONTROL);
else { ...error... }

然后处理WM_HOTKEY消息:

case WM_HOTKEY:
    if(wParam == hotkey)
    {
       // CTRL pressed!!!
    }
break;

我想您会发现自己需要存储之前是否CTRL按下过该键。例如,如果它在最后 500 毫秒内被按下一次,并且用户再次按下它,您就会按下CTRL+ CTRL

于 2010-02-10T19:44:33.360 回答