我正在制作游戏,当用户按下一个键时,当他们按下另一个键时,前一个键停止工作,新按下的键接管。使用以下块作为示例,这是 Java 的事情,还是与我的代码有关?
keyboard.setEvent("LEFT", new AbstractAction(){
@Override
public void actionPerformed(ActionEvent evt){
// Moves an object left
}
});
keyboard.setEvent("SPACE", new AbstractAction(){
@Override
public void actionPerformed(ActionEvent evt){
// Creates and object and moves it upwards
}
});
此方法(上面调用)创建事件。
public void setEvent(String key, AbstractAction act){
// Key Pressed
comp.
getInputMap(Room.WHEN_IN_FOCUSED_WINDOW).
put(KeyStroke.getKeyStroke(key), "do" + key + "Action");
comp.
getActionMap().
put("do" + key + "Action", act);
}