如何使多个按键绑定同时工作?

如何使多个按键绑定同时工作?,第1张

如何使多个按键绑定同时工作?

您需要使用一系列标志和某种“更新”循环来根据标志的状态来更新游戏的状态…

例如,首先创建一系列标志…

private boolean p1Left, p1Right, p2Left, p2Right = false;

这些可以由单个播放器对象轻松维护,但是您没有提供那么多代码…

接下来,您需要监视按键和按键释放事件,并根据需要设置标志的状态…

this.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_D, 0, false), "right1down");this.getActionMap().put("right1down", new AbstractAction() {    public void actionPerformed(ActionEvent e) {        p1Right = true;    }});this.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_D, 0, true), "right1up");this.getActionMap().put("right1up", new AbstractAction() {    public void actionPerformed(ActionEvent e) {        p1Right = false;    }});

然后,您需要某种可以更新游戏状态的循环或计时器。就个人而言,我喜欢使用

javax.swing.Timer
,但仅此而已。

在更新循环的每次运行中,您需要检查每个标志的状态并相应地更新对象。

if (p1Right) {    board.cezmi1.moveRight();}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5104482.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-16
下一篇 2022-11-16

发表评论

登录后才能评论

评论列表(0条)

保存