java中的键盘快捷键

时间:2011-11-09 22:16:40

标签: java swing keylistener

我想在我写的程序中添加一种作弊代码。我想知道我怎么能做到这一点。例如,当我在屏幕上的任何地方时,我希望能够按下某个键组合,例如ctl + alt + w,并从中获取一些动作。我的猜测是使用keylistener并将其添加到框架中。任何帮助将不胜感激。

谢谢,

class cheat implements KeyListener{

      public void keyPressed(KeyEvent e){

          char key = e.getKeyChar();

          System.out.println(key);

      }
      public void keyReleased(KeyEvent e){}

      public void keyTyped(KeyEvent e){}



      }

4 个答案:

答案 0 :(得分:3)

是的,你会添加一个keylistener。在侦听器的触发器内部,您可以将KeyEvent传递给辅助方法以封装逻辑,然后采取适当的行动。

isCheatCode(KeyEvent e) {
    if(e.getKeyCode() == KeyEvent.VK_W) {
        int mods = e.getModifiers();
        return (mods & InputEvent.ALT_MASK != 0)
        && mods & InputEvent.CTRL_MASK != 0;
    }
    return false;
}

答案 1 :(得分:3)

您可以在Java Swing中阅读How to Use Key Bindings

答案 2 :(得分:2)

如果你想在java中实现它,

http://download.oracle.com/javase/6/docs/api/java/awt/Robot.html应该是你的起点

答案 3 :(得分:2)

好吧,在Swing应用程序中,你可以使用KeyListeners和KeyBinding来做这种事情。看一下API和How-Tos

http://download.oracle.com/javase/tutorial/uiswing/misc/keybinding.html

http://download.oracle.com/javase/tutorial/uiswing/events/keylistener.html

问候!