私のWin32アプリケーションでCTRL + CTRLキープレスをキャプチャするには?
-
19-09-2019 - |
質問
どのように私は、グローバル Ctrlキーを2回( Ctrlキー + Ctrlキー)を押すと、ユーザーをキャプチャします。私は自分のアプリケーションウィンドウが隠されていた後、ユーザーがGoogleクイック検索ボックスに似 Ctrlキー はCtrl キーを押すと、それを呼び出したときに、それが見えるようにすることができるようにしたいです。ユーザーが別のウィンドウにフォーカスを持っていることがあります。私はRegisterHotKeyを見てきましたが、それは私が間違えてる場合を除きMODIFIERS + character key
ためのようです。
解決
などのホットキーを作成するには、次の操作を行います:
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 を押します。
所属していません StackOverflow