Nun, this ist die große Liste der virtuellen Schlüsselcodes.
CTRL-S wird als 2 WM_KEYDOWN
Nachrichten gesendet zu durch - eine Nachricht, wenn die Strg-Taste (VK_LCONTROL
oder VK_RCONTROL
), gefolgt von einem 0x53
für den „S“ -Taste gedrückt wird.
Anstatt beide Nachrichten zu verarbeiten, warten Sie auf die Tastenbelegung für das 'S' und rufen Sie dann GetKeyState mit dem magischen Wert VK_CONTROL (anderswo müssen Sie einzeln für die linke UND rechte Steuertaste testen) ab, um zu sehen, ob Das S wurde gedrückt, während STRG gedrückt gehalten wurde.
-
Offensichtlich Tastatur-Nachrichten werden direkt an das Fenster, das den Fokus hat, gesendet. Damit die Beschleunigerkombinationen im Anwendungsbereich der Anwendung funktionieren, müssen Sie die Nachrichten überprüfen, bevor Sie sie an das Fokusfenster senden - d. H. In Ihre Nachrichtenpumpe. Siehe Dokumentation für TranslateAccelerator.
Wenn Sie mit systemweiten Tastendrücken umgehen möchten, verweist die andere Antwort auf den Hotkey api.
Was mache ich, ist eine andere Kontrolle neben hWnd Fokus? – jmasterx
Um Ctrl-X-Kombinationen app weit zu handhaben, würden Sie die Beschleuniger-API verwenden. Systemweit - die Hotkey-API. –