机器人使用Java保持多个键

时间:2014-02-21 12:00:26

标签: java swing keyboard awt awtrobot

我正在尝试在JAVA中构建一些机器人类 我需要机器人同时按住3个键 - > (CTRL + SHIFT + DELETE)
我必须实现这一点,因为这个加速器打开了一个新窗口并节省了大量时间。

以下是我的代码:

  Robot robot = new Robot();

            robot.keyPress(InputEvent.CTRL_MASK);
            robot.delay(100); 
            robot.keyPress(InputEvent.SHIFT_MASK); 
            robot.delay(150);
            robot.keyPress(KeyEvent.VK_DELETE);

            robot.keyRelease(KeyEvent.VK_DELETE); 
            robot.keyRelease(InputEvent.SHIFT_MASK); 
            robot.keyRelease(InputEvent.CTRL_MASK);

1 个答案:

答案 0 :(得分:2)

基本上你需要使用KeyEvent常量而不是InputEvent

        robot.keyPress(KeyEvent.VK_CONTROL);
        robot.keyPress(KeyEvent.VK_SHIFT); 
        robot.keyPress(KeyEvent.VK_DELETE);

keypress正在使用KeyEvent常量。输入事件不属于。

这一切都在文档中 http://docs.oracle.com/javase/7/docs/api/java/awt/Robot.html#keyPress(int)