![](/img/trans.png)
[英]How to detect if any keyboard key other than a specific keyboard key has been pressed in C++?
[英]C++ hook keyboard key pressed and key released
我正在嘗試嘗試鍵盤掛鈎。 這意味着我正在嘗試捕獲按鍵和按鍵釋放。
我嘗試使用一組鍵遍歷一個循環,其中 key 是當前正在檢查的鍵值:
GetAsyncKeyState(key) & 0x8000
以下示例捕獲多次按鍵。 我正在尋找的結果是僅在第一次按下時捕獲鍵,如果它釋放它可以再次輸入。
所以這個技巧基本上是使用函數 GetAsyncKeyState,並計算每個鍵被按下的次數。 如果計數等於 1,則按下返回鍵(一次)這是我的課程:
class Key {
private:
unsigned char key;
int count;
public:
Key(unsigned char key) {
this->key = key;
}
void captureKey() {
if (GetAsyncKeyState(key) & 0x8000) {
count++;
}
else {
count = 0;
}
}
bool isPressed() {
return count == 1;
}
unsigned char getKey() {
return this->key;
}
};
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.