这是我程序的主类中的一种方法。它具有我想要的控件(按“ i”将调用Field.ship.push(0,-1)),但是我需要知道如何在程序中实现它们,使其真正起作用?请告诉我需要添加到主程序中的内容,以便在玩游戏时可以使用控件。谢谢
public void keyPressed(KeyEvent event) {
char eventChar = event.getKeyChar();
if (eventChar == 'i') {
Field.ship.push(0, -1);
} else if (eventChar == 'j') {
Field.ship.push(-1, 0);
} else if (eventChar == 'k') {
Field.ship.push(0, 1);
} else if (eventChar == 'l') {
Field.ship.push(1, 0);
} else if (eventChar == 'a') {
Field.addBullets();
}
}
最佳答案
不要使用KeyListener。
请参阅Motion Using the Keyboard,了解为何不应该使用KeyListener的原因,以及使用Key Bindings
的示例(这是首选方法)来入门的原因。