Java KeyEvent:如何一次读入两个键

时间:2013-12-10 23:24:05

标签: java awt keyevent

我正在制作一个简单的游戏(我第一次使用键盘阅读器)并使用WASD输入来移动角色。我想这样做,如果你同时按下W和A,你就会对角线。有谁知道怎么做?

1 个答案:

答案 0 :(得分:1)

不要使用KeyListener。 Swing旨在与Key Bindings一起使用。

无论哪种方式,您都无法同时收听多个键,因此您需要跟踪已按下的键。由于你想做动画,你通常会使用Swing Timer来安排动画。然后,每次定时器触发时,检查按下了哪些键,并根据按下的键移动角色。

查看Motion Using The Keyboard中的KeyboardAnimation.java源代码,了解演示此方法的示例。本文还说明了为什么键绑定比KeyListener更受欢迎的原因。