1 回答

TA貢獻(xiàn)1830條經(jīng)驗 獲得超9個贊
KeyboardUtils
在任何平臺上根本不支持方向鍵。
KeyboardUtils
僅適用于 3 種鍵盤平臺 - Windows、Mac 和 Linux。
在 Mac 上,isPressed()
根本沒有實現(xiàn)并為所有鍵代碼返回 false,并在初始化UnsupportedOperationException
時拋出an。KeyboardUtils
在 Windows 和 Linux 上,KeyboardUtils
支持以下鍵:
VK_A
?-?VK_Z
VK_0
-VK_9
VK_SHIFT
VK_CONTROL
VK_ALT
VK_META
(僅限 Linux)
在 Windows 上,將鍵碼KeyboardUtils.isPressed()
轉(zhuǎn)換KeyEvent
為 Win32 虛擬鍵碼 (in?W32KeyboardUtils.toNative()
) 并將它們傳遞給GetAsyncKeyState()
(in?W32KeyboardUtils.isPressed()
)。但是箭頭鍵未被處理并被轉(zhuǎn)換為虛擬鍵碼 0,這不是有效的鍵碼。
與 Linux 鍵碼類似。
因此,要檢測 Windows 上的箭頭鍵,您必須調(diào)用GetAsyncKeyState()
自己,正如您已經(jīng)發(fā)現(xiàn)的那樣。
添加回答
舉報