当前位置:  开发笔记 > 编程语言 > 正文

如何检查按下的键是否是Java KeyListener中的箭头键?

如何解决《如何检查按下的键是否是JavaKeyListener中的箭头键?》经验,为你挑选了3个好方法。

你能帮我修改一下这段代码:

public void keyPressed(KeyEvent e)
    {

    if (e.getKeyCode()==39)
    {
                //Right arrow key code
    }

    else if (e.getKeyCode()==37)
    {
                //Left arrow key code
    }

    repaint();

}

请注意如何检查向上/向下箭头键.谢谢!



1> OscarRyz..:
public void keyPressed(KeyEvent e) {
    int keyCode = e.getKeyCode();
    switch( keyCode ) { 
        case KeyEvent.VK_UP:
            // handle up 
            break;
        case KeyEvent.VK_DOWN:
            // handle down 
            break;
        case KeyEvent.VK_LEFT:
            // handle left
            break;
        case KeyEvent.VK_RIGHT :
            // handle right
            break;
     }
} 



2> banjollity..:
public void keyPressed(KeyEvent e) {
    if (e.getKeyCode() == KeyEvent.VK_RIGHT ) {
            //Right arrow key code
    } else if (e.getKeyCode() == KeyEvent.VK_LEFT ) {
            //Left arrow key code
    } else if (e.getKeyCode() == KeyEvent.VK_UP ) {
            //Up arrow key code
    } else if (e.getKeyCode() == KeyEvent.VK_DOWN ) {
            //Down arrow key code
    }

    repaint();
}

KeyEvent代码都是API的一部分:http://docs.oracle.com/javase/7/docs/api/java/awt/event/KeyEvent.html



3> Jaime..:

只是为了完成答案(使用KeyEvent是要走的路),但向上箭头是38,向下箭头是40,所以:

    else if (e.getKeyCode()==38)
    {
            //Up arrow key code
    }
    else if (e.getKeyCode()==40)
    {
            //down arrow key code
    }

推荐阅读
农大军乐团_697
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有