开发目的
持续按下只触发一次效果
代码
当首次按下enter键,改变了flag的值,使得后续按住enter键也不会触发效果。直到松开enter键,才会将flag改回来。
#include<iostream>
#include<windows.h>
#define KEY_DOWN(vKey) ((GetAsyncKeyState(vKey) & 0x8000) ? 1:0)
#define KEY_UP(vKey) ((GetAsyncKeyState(vKey) & 0x8000) ? 0:1)
using namespace std;
int main() {
int flag = 0;
while (1) {
if (KEY_DOWN(13)) {//Enter在Key Code中为13
if (flag == 0) {
cout << " Enter is on \n";
}
flag = 1;
}
if (KEY_UP(13)) {//Enter在Key Code中为13
if (flag == 1) {
cout << " Enter is up \n";
}
flag = 0;
}
}
return 0;
}