→ MOONRAKER:Ctrl-A .. Ctrl-Z 不是本來就對應 ASCII 1 .. 26 嗎 10/21 10:06
※ 引述《softwind (software everywhere)》之銘言:
: as title
: 請問 有版友知道嗎???
: 不限定是 blocking or non-blocking call
: 只要能獲得 ctrl,alt or shift被按下的事件 就可以了
: 如果有標準lib 的function可以用 最好
: 不過 window API 也可以
: 我實在是 找不到 關鍵字 "只偵測 ctrl or alt or shift key"
: ps. 在console mode 底下
可以用 GetKeyState(VK_LMENU)&0x80 的方式取得
但是 配合 getch() 的數值很怪
ctrl+'a' -> 1
ctrl+'b' -> 2 ... why?
ctrl+'1' -> no response?
alt+'...'相對是比較正常的
但是 這樣依然沒有辦法 在user按下ctrl or alt 就觸發 callback
ps. bkhit() 似乎 只會return 0 or 1, so 這邊用處不大
如果真的都不行 最後只能用 GetKeyboardState
取得256個虛擬key 再做判斷了
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.166.116.86