使用Java AWT Robot类的问题



我正在使用robot类并尝试敲击按键ctrl+alt+del
下面是代码

public class RobotClassDemo{
    public static void main(String[] args) {
         try {
             Robot robot = new Robot();
             robot.keyPress(KeyEvent.VK_CONTROL);
             System.out.println("ctrl pressed");
             robot.keyPress(KeyEvent.VK_ALT);
             System.out.println("alt pressed");
             robot.keyPress(KeyEvent.VK_DELETE);
             System.out.println("delete pressed");
         } catch (AWTException e) {
             e.printStackTrace();
         } 
     }
 } 


但它并没有给我任何选项,就像我在这里所说的那样,它将移动到包含锁定、关闭、更改密码等的屏幕。(就像在窗口7中,当我们按下ctrl+alt+del时发生的那样)。我在窗口7上运行这个程序。我有任何限制或访问权限吗?或者问题出在哪里
编辑:即使我的这个代码也很好

public void alt_tab() {
    Robot robot = new Robot();
    robot.keyPress(KeyEvent.VK_ALT);
    robot.keyPress(KeyEvent.VK_CONTROL);
    robot.keyPress(KeyEvent.VK_TAB);
    robot.delay(100);
    robot.keyRelease(KeyEvent.VK_TAB);
    robot.keyRelease(KeyEvent.VK_CONTROL);
    robot.keyRelease(KeyEvent.VK_ALT);
}

但不知道第一个有什么问题

如果操作系统或环境禁止这样做,我不会完全感到惊讶;但是,您是否尝试添加robot.keyRelease事件?此刻,你好像永远都在按住钥匙。这可能不足以激发操作系统用来识别该组合键的适当的键向上/向下/按下事件。

最新更新