【问题标题】:Robot to hold multiple key down using Java机器人使用 Java 按住多个键
【发布时间】:2014-03-22 22:30:20
【问题描述】:

我正在尝试用 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);

【问题讨论】:

  • 那里有问题吗?
  • 您不应该将keyEvent发送给awt.Robot吗?比如robot.keyPress(KeyEvent.VK_CONTROL)

标签: java swing keyboard awt awtrobot


【解决方案1】:

基本上你需要使用 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)

【讨论】:

    猜你喜欢
    • 2013-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-11
    • 2013-07-20
    • 2021-07-19
    相关资源
    最近更新 更多