Megosztás:


KEY_EVENT_RECORD szerkezet

A konzol INPUT_RECORD szerkezetének billentyűzetbemeneti eseményét ismerteti.

Szemantika

typedef struct _KEY_EVENT_RECORD {
  BOOL  bKeyDown;
  WORD  wRepeatCount;
  WORD  wVirtualKeyCode;
  WORD  wVirtualScanCode;
  union {
    WCHAR UnicodeChar;
    CHAR  AsciiChar;
  } uChar;
  DWORD dwControlKeyState;
} KEY_EVENT_RECORD;

Tagok

bKeyDown
Ha a kulcs lenyomva van, ez a tag IGAZ. Ellenkező esetben ez a tag HAMIS (a kulcs ki van adva).

wRepeatCount
Az ismétlések száma, amely azt jelzi, hogy egy kulcs le van tartva. Ha például egy kulcs le van tartvava, öt eseményt kaphat, amelynek a tagja 1, egy olyan eseményt, amelynek ez a tagja 5, vagy több olyan eseményt, amelynek ez a tagja 1-nél nagyobb vagy egyenlő.

wVirtualKeyCode
Egy virtuális kulcskód , amely eszközfüggetlen módon azonosítja az adott kulcsot.

wVirtualScanCode
Az adott kulcs virtuális beolvasási kódja, amely a billentyűzethardver által létrehozott eszközfüggő értéket jelöli.

uChar
A következő tagok egysége.

UnicodeChar
Unicode-karakter lefordítva.

AsciiChar
Lefordított ASCII-karakter.

dwControlKeyState
A vezérlőkulcsok állapota. Ez a tag az alábbi értékek közül egy vagy több lehet.

Érték Értelmezés
CAPSLOCK_ON 0x0080 A CAPS LOCK fény be van kapcsolva.
ENHANCED_KEY 0x0100 A kulcs továbbfejlesztett. Lásd a megjegyzéseket.
LEFT_ALT_PRESSED 0x0002 A bal OLDALI ALT billentyű lenyomva van.
LEFT_CTRL_PRESSED 0x0008 A bal OLDALI CTRL billentyű lenyomva van.
NUMLOCK_ON 0x0020 A NUM LOCK fény be van kapcsolva.
RIGHT_ALT_PRESSED 0x0001 A jobb OLDALI ALT billentyű lenyomva van.
RIGHT_CTRL_PRESSED 0x0004 A jobb OLDALI CTRL billentyű lenyomva van.
SCROLLLOCK_ON 0x0040 A SCROLL LOCK fény be van kapcsolva.
SHIFT_PRESSED 0x0010 A SHIFT billentyű lenyomva van.

Megjegyzések

Az IBM® 101 és 102 billentyűs billentyűzetek továbbfejlesztett kulcsai a billentyűzet bal oldalán található fürtökben található INS, DEL, HOME, END, PAGE UP, PAGE DOWN és direction keys; és az osztás (/) és az ENTER billentyűk a billentyűzeten.

A billentyűzetbemeneti események akkor jönnek létre, amikor a billentyűk ( köztük a vezérlőbillentyűk) lenyomása vagy kiadása történik. Az ALT billentyű azonban egy másik karakterrel való kombinálás nélkül lenyomva és feloldva különleges jelentést ad a rendszernek, és nem továbbítja az alkalmazásnak. Emellett a CTRL+C billentyűkombináció nem lesz átadva, ha a bemeneti fogópont feldolgozott módban van (ENABLE_PROCESSED_INPUT).

Példák

Példa: Bemeneti pufferes események olvasása.

Követelmények

   
Minimálisan támogatott ügyfél Windows 2000 Professional [csak asztali alkalmazások]
Minimálisan támogatott kiszolgáló Windows 2000 Server [csak asztali alkalmazások]
Header WinConTypes.h (a WinCon.h-n keresztül, a Windows.h-t is belefoglalva)

Lásd még

PeekConsoleInput

ReadConsoleInput

WriteConsoleInput

INPUT_RECORD