共用方式為


KEY_EVENT_RECORD 結構

描述主控台 INPUT_RECORD 結構中的鍵盤輸入事件。

語法

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

成員

bKeyDown
如果按下按鍵,則此成員為 TRUE。 否則,此成員為 FALSE (金鑰已釋出)。

wRepeatCount
重複計數,表示正在按住索引鍵。 例如,當機碼被按住時,您可能會得到五個事件,此成員等於1、一個成員等於5的事件,或此成員大於或等於1的多個事件。

wVirtualKeyCode
虛擬 金鑰程式代碼 ,以與裝置無關的方式識別指定的金鑰。

wVirtualScanCode
指定按鍵的虛擬掃描代碼,表示鍵盤硬體所產生的裝置相依值。

uChar
下列成員的聯集。

UnicodeChar
已翻譯 Unicode 字元。

AsciiChar
翻譯的 ASCII 字元。

dwControlKeyState
控制鍵的狀態。 這個成員可以是下列其中一或多個值。

意義
CAPSLOCK_ON 0x0080 CAPS LOCK 燈已開啟。
ENHANCED_KEY 0x0100 金鑰已增強。 請參閱 備註
LEFT_ALT_PRESSED 0x0002 按下左 ALT 鍵。
LEFT_CTRL_PRESSED 0x0008 按下左 CTRL 鍵。
NUMLOCK_ON 0x0020 NUM LOCK 燈已開啟。
RIGHT_ALT_PRESSED 0x0001 按下右 ALT 鍵。
RIGHT_CTRL_PRESSED 0x0004 按下右 CTRL 鍵。
SCROLLLOCK_ON 0x0040 SCROLL LOCK 燈已開啟。
SHIFT_PRESSED 0x0010 按下SHIFT鍵。

備註

IBM® 101 和 102 鍵鍵盤的增強鍵為 INS、DEL、HOME、END、PAGE UP、PAGE DOWN,以及按鍵板左邊叢集中的方向鍵:和鍵台中的除號 (/) 和 ENTER 鍵。

當按下或放開任何按鍵,包括控制鍵時,就會產生鍵盤輸入事件。 不過,按下並放開 ALT 鍵而不結合另一個字元時,對系統具有特殊意義,而且不會傳遞至應用程式。 此外,如果輸入句柄處於處理模式(ENABLE_PROCESSED_INPUT),則不會通過 CTRL+C 按鍵組合。

範例

如需範例,請參閱讀取輸入緩衝區事件

需求

   
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
頁首 WinConTypes.h (透過 WinCon.h,包含 Windows.h)

另請參閱

PeekConsoleInput

ReadConsoleInput

WriteConsoleInput

INPUT_RECORD