一 windows 系統下的 vs 中可以使用 _kbhit() 函式來獲取鍵盤事件,使用時需要加入 conio.h 標頭檔案,例:
#include #include using namespace std;
int main()
//當按下esc時迴圈,esc鍵的鍵值時27.}}
system("pause");
}
二 在 unix/linux 下,並沒有提供 kbhit() 函式。我們可以自己來實現 kbhit() 程式。
#include #include static struct termios initial_settings, new_settings;
static int peek_character = -1;
void init_keyboard(void);
void close_keyboard(void);
int kbhit(void);
int readch(void);
void init_keyboard()
void close_keyboard()
int kbhit()
return 0;}
int readch()
read(0,&ch,1);
return ch;}
int main()
close_keyboard();
return 0;
}
三 鍵盤 key code 對照表
字母和數字鍵的鍵碼值(keycode)
按鍵鍵碼
按鍵鍵碼
按鍵鍵碼
按鍵鍵碼a65
j74s83
149b66
k75t84
250c67
l76u85
351d68
m77v86
452e69
n78w87
553f70
o79x88
654g71
p80y89
755h72
q81z90
856i73
r82048
957數字鍵盤上的鍵的鍵碼值(keycode)功能鍵鍵碼值(keycode)
按鍵鍵碼
按鍵鍵碼
按鍵鍵碼
按鍵鍵碼096
8104
f1112
f7118197
9105
f2113
f8119298
*106
f3114
f9120399
+107
f4115
f10121
4100
enter
108f5
116f11
1225
101-
109f6
117f12
1236
102.
1107
103/
111控制鍵鍵碼值(keycode)
按鍵鍵碼
按鍵鍵碼
按鍵鍵碼
按鍵鍵碼
backspace
8esc
27right arrow
39-_
189tab
9spacebar
32dw arrow
40.>
190clear
12page up
33insert
45/?
191enter
13page down
34delete
46`~
192shift
16end
35num lock
144[
221cape lock
20up arrow
38,<
188'"
222多**鍵碼值(keycode)
按鍵鍵碼
按鍵鍵碼
按鍵鍵碼
按鍵鍵碼
音量加175
音量減174
停止179
靜音173
瀏覽器172
郵件180
搜尋170
收藏171
C 模擬鍵盤事件
c 模擬鍵盤事件 public partial class form1 form dllimport user32.dll public static extern intptr findwindow string lpclassname,string lpwindowname 匯入尋找window...
osx獲取全域性鍵盤 滑鼠事件
cfrunloopref therl cfrunloopgetcurrent cfmachportref keyupeventtap cgeventtapcreate kcgsessioneventtap,kcgheadinserteventtap kcgeventtapoptionlistenon...
C 模擬鍵盤滑鼠事件
1.模擬鍵盤事件 system.windows.forms.sendkeys 以下是 sendkeys 的一些特殊鍵 表。鍵 backspace 或 break caps lock del 或 delete 或 down arrow 下箭頭鍵 end enter 或 esc help home in...