如何使用键侦听器进行宏操作

时间:2014-04-30 13:49:32

标签: java

我正在尝试按键盘按键移动:如果按下uparrow则上升等。

我的问题是我不知道如何捕捉多次按键。

例如,如果将uparrow和leftarrow压在一起我想要上去。

到目前为止我所做的:

shell.addKeyListener(new KeyAdapter() {
    @Override
    public void keyPressed(KeyEvent e) {
        if(e.keyCode == SWT.ARROW_DOWN)
            setUserCommand(2);
        else if(e.keyCode == SWT.ARROW_UP)
            setUserCommand(8);
        else if(e.keyCode == SWT.ARROW_LEFT)
            setUserCommand(4);
        else if(e.keyCode == SWT.ARROW_RIGHT)
            setUserCommand(6);
}
});

如何捕获多个按键?

1 个答案:

答案 0 :(得分:2)

你可以创建一个按下的键的抽象,也许只是一个跟踪它的布尔值,并在某个相关的好时间测试(可能在keyPressed方法中,或者在某些{{1}中你在游戏循环中的某个时候创建​​的(如果你拥有的话)。

checkKeysThatArePressedMethod