Delphi 鍵盤API GetKeyState、GetAsyncKeyState -獲取鍵盤 / 按鍵值Key的狀態
阿新 • • 發佈:2020-07-29
Delphi 鍵盤API GetKeyState、GetAsyncKeyState -獲取鍵盤 / 按鍵值key的狀態
1、GetKeyState
作用:檢索指定虛擬金鑰的狀態。狀態指定該鍵是向上、向下還是切換(每次按該鍵時交替開啟、關閉)。
原型:
SHORT GetKeyState(
int nVirtKey
);
返回值:
- 返回值指定虛擬金鑰的狀態,如下所示:
- 如果高階位為1,則鍵為down;否則為up。
- 如果低階位為1,則鍵被切換。如果鍵(如大寫鎖定鍵)處於啟用狀態,則會切換該鍵。如果低階位為0,則鍵處於關閉狀態,且不發生變化。撥動鍵時,鍵盤上的指示燈(如果有)將亮起;當鍵未被撥動時,指示燈將熄滅。
2、GetAsyncKeyState(非同步獲取鍵盤狀態)
作用:確定在呼叫函式時鍵是向上還是向下,以及在上一次呼叫GetAsyncKeyState之後是否按下了該鍵。
原型:
SHORT GetAsyncKeyState(
int vKey
);
返回值:如果函式成功,則返回值指定自上次呼叫GetAsyncKeyState後是否按下該鍵,以及該鍵當前是向上還是向下。如果設定了最高有效位,則鍵為down;如果設定了最低有效位,則在上一次呼叫GetAsyncKeyState之後按下了該鍵。但是,您不應該依賴最後一種行為;
經過測試返回值的結果:1,0,-32768 (未按下返回0,上一次按過返回1,一直按下返回負數 ---滔Roy 2020.07.29)
建立時間:2020.07.29 更新時間: