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 (ein, aus, wechselt jedes Mal, wenn die Taste gedrückt wird).

Syntax

SHORT GetKeyState(
  [in] int nVirtKey
);

Die 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 "o"-Taste, während VK_OEM_1 auf die Taste "o mit Umlaut" verweist.

Rückgabewert

Typ: SHORT

Der Rückgabewert gibt den Status des angegebenen virtuellen Schlüssels wie folgt an:

  • Wenn das Bit der hohen Reihenfolge 1 ist, ist der Schlüssel unten; andernfalls ist es hoch.
  • Wenn das Bit mit niedriger Reihenfolge 1 ist, wird der Schlüssel umgeschaltet. Eine Taste, z. B. die FESTSTELLTASTE, wird bei aktivierter Taste umgeschaltet. Der Schlüssel ist deaktiviert und wird deaktiviert, wenn das Bit mit niedriger Reihenfolge 0 ist. Die Anzeigeleuchte einer Umschalttaste (falls vorhanden) auf der Tastatur wird aktiviert, wenn die Taste umgeschaltet wird, und deaktiviert, wenn die Taste nicht umgeschaltet wird.

Bemerkungen

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

Eine Anwendung ruft GetKeyState als Reaktion auf eine Tastatureingabenachricht auf. Diese Funktion ruft den Status des Schlüssels ab, wenn die Eingabemeldung generiert wurde.

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

Eine Anwendung kann die virtuellen SchlüsselcodekonstantenVK_SHIFT, VK_CONTROL und VK_MENU als Werte für den nVirtKey-Parameter verwenden. Dadurch wird der Status der UMSCHALT-, STRG- oder ALT-TASTE ohne Unterscheidung zwischen links und rechts angezeigt. Eine Anwendung kann auch die folgenden virtual-key-Codekonstanten als Werte für nVirtKey verwenden, um zwischen den linken und rechten Instanzen dieser Schlüssel zu unterscheiden:

VK_LSHIFTVK_RSHIFTVK_LCONTROLVK_RCONTROLVK_LMENU VK_RMENU Diese links- und rechts unterscheidenden Konstanten stehen nur über die Funktionen GetKeyboardState, SetKeyboardState, GetAsyncKeyState, GetKeyState und MapVirtualKey für eine Anwendung zur Verfügung.

Examples

Ein Beispiel finden Sie unter Anzeigen von Tastatureingaben.

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows 2000 Professional [nur Desktop-Apps]
Mindestanforderungen für unterstützte Server Windows 2000 Server [nur Desktop-Apps]
Zielplattform Fenster
Header winuser.h (enthalten Windows.h)
Library User32.lib
DLL User32.dll

Siehe auch