Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Java是否支持多按键以及如何实现?此解决方案根本不起作用:
if (key == KeyEvent.VK_LEFT) { if(key==KeyEvent.VK_S){ dx = -3; } }
没有这样的内置功能,因此您必须自己处理。例如,收集最后一个KEY_PRESSED KeyEvents 并检查您的组合。当一个键被释放时,即KEY_RELEASED,您可以将它从集合中移除。
KEY_PRESSED
KeyEvent
KEY_RELEASED
如果您正在寻找 shift、ctrl、alt 或 alt gr,则有一个更简单的解决方案 - KeyEvent 具有方法isShiftDown(), isControlDown(),isAltDown()它isAltGraphDown()会告诉您这些方法是否在事件中失败。
isShiftDown()
isControlDown()
isAltDown()
isAltGraphDown()