如何使用VK_k而不是VK_K制作小的vk字母? 使用Switch Case 感谢
public void onKeyPressed(KeyEvent e){
switch(e.getKeyCode()){
case VK_K:
moveDirection=1;
moveAmount = Double.POSITIVE_INFINITY;
break;
case VK_L: moveDirection=-1;
moveAmount = Double.POSITIVE_INFINITY;
break;
case VK_H: turnDirection=-1;
break;
case VK_J: turnDirection=1;
break;
case VK_SPACE: firePower = 1;
break;
}
}
答案 0 :(得分:4)
您应该完整阅读KeyEvent的说明 - 它包含答案:
虚拟键码用于报告按下了哪个键盘键,而不是由一个或多个击键组合产生的字符(例如“A”,来自shift和“a”)。
结论:您的键盘只有一个K
键 - 因此只有常量VK_K
。您同时按下的其他键(shift,alt,ctrl,..)不会更改您获得的密钥代码。