如何在不创建新的公共方法的情况下利用KeyEvent?

时间:2016-02-09 01:05:31

标签: java keyevent

我正在制作一个迷宫游戏"在一开始的编码课中,我很难理解KeyEvent类。 我有一个移动方法(不完整),用于根据键盘输入在整个迷宫中移动资源管理器。

public void move(int key){



    int row = this.location().row();
    int col = this.location().col();



    if (getKeyChar() == VK_RIGHT)

        if (this.wall(RIGHT))
        {
            row += 1;
            this.moveTo(maze.getSquare(row, col));
        }




}

我知道" if(getKeyChar()== VK_RIGHT)是不正确的,我理解KeyEvent在其他一些情况下是如何工作的,但作为一门大学课程,存在一些限制,例如我的代码架构必须与我的教授的测试文件相匹配,这意味着我不能创建一个新的公共方法,除了我的代码中已有的。

我已经看过其他的广告,例如Detecting keyboard direction keys using keyPressed的答案,但这涉及一种我不能拥有的新公共方法。

我还看到了" KeyEvent(组件源,int id,long when,int modifiers,int keyCode)"的许多用途。但坦率地说,我不知道我会为这些论点输入什么,我也不相信这就是我要找的。\

虽然我的导师没有直接说我们不能,但我相信我也不能使用keyListener。

我希望能够检查是否按下某个箭头键,如果是,请调用我的moveTo(Square s)函数。如果有人可以解释这是如何在我的限制下工作的,那将是惊人的。

试图具体,抱歉,如果这是一个很糟糕的问题,这是我的第一篇文章,谢谢你提前!

0 个答案:

没有答案