Freigeben über


GetKeyState-Funktion (winuser.h)

Ruft den Status des angegebenen virtuellen Schlüssels ab. Der status gibt an, ob die Taste nach oben, unten oder umschaltet ist (ein, aus – abwechselnd bei jedem Drücken der Taste).

Syntax

SHORT GetKeyState(
  [in] int nVirtKey
);

Parameter

[in] nVirtKey

Typ: int

Ein virtueller Schlüssel. Wenn der gewünschte virtuelle Schlüssel ein Buchstabe oder eine Ziffer ist (A bis Z, a bis z oder 0 bis 9), muss nVirtKey auf den ASCII-Wert dieses Zeichens festgelegt werden. Bei anderen Schlüsseln muss es sich um einen Virtuellen Schlüsselcode sein.

Wenn ein nicht englisches Tastaturlayout verwendet wird, werden virtuelle Tasten mit Werten im Bereich ASCII A bis Z und 0 bis 9 verwendet, um die meisten Zeichentasten anzugeben. Für das deutsche Tastaturlayout bezieht sich beispielsweise die virtuelle Taste des Werts ASCII O (0x4F) auf die Taste "o", während VK_OEM_1 auf die Taste "o mit Umlaut" verweist.

Rückgabewert

Typ: SHORT

Der Rückgabewert gibt die status des angegebenen virtuellen Schlüssels wie folgt an:

  • Wenn das hochgeordnete Bit 1 ist, ist der Schlüssel ausgefallen. andernfalls ist sie auf.
  • Wenn das Bit mit niedriger Reihenfolge 1 ist, wird der Schlüssel umgeschaltet. Eine Taste, z. B. die CAPS-LOCK-Taste, wird umgeschaltet, wenn sie aktiviert ist. Der Schlüssel ist deaktiviert und deaktiviert, wenn das Bit mit niedriger Reihenfolge 0 ist. Die Anzeigeleuchte einer Umschalttaste (falls vorhanden) auf der Tastatur wird eingeschaltet, wenn die Taste umgeschaltet ist, und wenn die Taste deaktiviert ist.

Hinweise

Der Schlüssel status, der von dieser Funktion zurückgegeben wird, ändert sich, wenn ein Thread Schlüsselmeldungen aus seiner Nachrichtenwarteschlange liest. Die status spiegelt nicht den Zustand auf Interruptebene wider, der der Hardware zugeordnet ist. Verwenden Sie die GetAsyncKeyState-Funktion , um diese Informationen abzurufen.

Eine Anwendung ruft GetKeyState als Antwort auf eine Tastatureingabenachricht auf. Diese Funktion ruft den Zustand des Schlüssels ab, wenn die Eingabenachricht generiert wurde.

Verwenden Sie die GetKeyboardState-Funktion , um Zustandsinformationen für alle virtuellen Schlüssel abzurufen.

Eine Anwendung kann die Konstanten des virtuellen SchlüsselcodesVK_SHIFT, VK_CONTROL und VK_MENU als Werte für den Parameter nVirtKey verwenden. Dadurch erhalten Sie die status der UMSCHALT-, STRG- oder ALT-TASTE, ohne zwischen links und rechts zu unterscheiden. Eine Anwendung kann auch die folgenden Virtuellen Schlüsselcodekonstanten als Werte für nVirtKey verwenden, um zwischen der linken und rechten Instanz dieser Schlüssel zu unterscheiden:

VK_LSHIFTVK_RSHIFTVK_LCONTROLVK_RCONTROLVK_LMENUVK_RMENU Diese konstanten links und rechts sind für eine Anwendung nur über die Funktionen GetKeyboardState, SetKeyboardState, GetAsyncKeyState, GetKeyState und MapVirtualKey verfügbar.

Beispiele

Ein Beispiel finden Sie unter Anzeigen von Tastatureingaben.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winuser.h (einschließlich Windows.h)
Bibliothek User32.lib
DLL User32.dll

Weitere Informationen