草庐IT

awtrobot

全部标签

java - Alt+Tab 使用 Java 机器人

我正在尝试使用Java机器人调出alt+tab菜单。当我调用alt_tab()方法时,我想调出alt+tab菜单并保持菜单向上。我知道这可以使用alt+ctrl+tab来实现。到目前为止,我已经尝试了下面的代码,而且只是alt+tab没有控制键。我不确定为什么它不调出菜单。它所做的只是模拟按下alt键。publicvoidalt_tab(){Robotrobot=newRobot();robot.keyPress(KeyEvent.VK_ALT);robot.keyPress(KeyEvent.VK_CONTROL);robot.keyPress(KeyEvent.VK_TAB);ro

java - 无法在 Java 中使用机器人按 Window+L

我正在使用Robot类在Java中模拟按键。但是我无法按Window键+L,尽管我可以单独按它们。这是我的代码:privatevoidpressKey(){Robotr=newRobot();robot.keyPress(KeyEvent.VK_WINDOWS);robot.keyPress(KeyEvent.VK_L);robot.keyRelease(KeyEvent.VK_WINDOWS);robot.keyRelease(KeyEvent.VK_L);} 最佳答案 试试这个:Runtime.getRuntime().exec

java - 从java中的任意字符获取VK int

如何从作为字母的字符中获取VK代码?看起来您应该能够执行类似javax.swing.KeyStroke.getKeyStroke('c').getKeyCode()的操作,但这不起作用(结果为零)。如果你已经有了KeyEvent,每个人都知道如何获取键码,但是如果你只是想将chars转换为VKints怎么办?我对获取奇怪字符的FK代码不感兴趣,只有[A-Z]、[a-z]、[0-9]。这个问题的背景--------我见过的所有机器人教程都假设程序员喜欢通过发送带有VK代码的按键来拼写单词:intkeyInput[]={KeyEvent.VK_D,KeyEvent.VK_O,KeyEven

java - java.awt.Robot.waitForIdle() 是否等待事件被分派(dispatch)?

我正在使用java.awt.Robot对我的Swing应用程序进行集成测试,但我无法按正确的顺序运行我的操作。我如何告诉调用robot.mousePressed(...)的线程阻塞,直到Swing完成调度该事件?显然,robot.setAutoWaitForIdle(true)没有任何好处。这是我的演示。我期待“机器人完成!”消息总是在“Actionfinishedblocking.”之后出现,但它通常发生得太快了。importjava.awt.AWTException;importjava.awt.GraphicsConfiguration;importjava.awt.Graphi

android - 如何以编程方式按下android的物理按钮

我想以编程方式按下音量按钮。在Java中可以使用机器人类,但在Android中没有机器人类。我想知道如何在Android中实现这一点。 最佳答案 我建议你以编程方式增加/减少音量,这会更容易一些,但是如果你想将它用于其他一些过程,那么你可以检查下面的代码-编辑-我之前给出的fragment不起作用,但这个fragment有效。它使用可运行的,因此trycatchblock是必需的。newThread(newRunnable(){@Overridepublicvoidrun(){try{Instrumentationinst=newI

java - Robot.mouseMove 没有正确移动到指定位置

每当我为机器人运行mouseMove命令时,鼠标并不总是到达相同的位置。例如,我有以下代码:importjava.awt.Robot;importjava.util.concurrent.TimeUnit;publicclassMainBot{publicstaticvoidmain(String[]args){try{RobotscreenWin=newRobot();TimeUnit.SECONDS.sleep(2);screenWin.mouseMove(100,300);}catch(Exceptione){e.printStackTrace();}}}代码通常使鼠标在X处结束

java - 使用 Java 发送斜杠和反斜杠

当使用Java机器人时,发送斜杠或反斜杠时会抛出异常。例如:publicvoidslash()throwsAWTException{Robotrob=newRobot();rob.keyPress(KeyEvent.VK_SLASH);rob.keyRelease(KeyEvent.VK_SLASH);}publicvoidbackSlash()throwsAWTException{Robotrob=newRobot();rob.keyPress(KeyEvent.VK_BACK_SLASH);rob.keyRelease(KeyEvent.VK_BACK_SLASH);}然后,当我想

java - 机器人方法是否需要在事件队列上运行?

Robot是AWT库的一部分,但它似乎与库中的大多数其他部分大不相同。我正在创建一个SwingGUI,它将Swing与JavaNativeAccess(JNA)和Robot混合在一起,以允许Java驱动某些MSWindows/Citrix工作程序。我的直觉是,由于Robot将在“平台的native输入队列”上对事件进行排队,所以我最不想做的就是在EDT上运行它,但另一方面,AWT和Swing库中的大多数类应该在Swing事件线程上运行。因此,为了在我的脑海中澄清这一点,让我问一个尽可能具体的问题:机器人方法(尤其是按键按下和释放、鼠标移动、鼠标按下和释放)应该在Swing事件调度线程(

java - 使用 Selenium WebDriver 和 Java 机器人类上传文件

我正在使用SeleniumWebDriver和Java,我需要自动执行文件上传功能。我尝试了很多次,但是当单击“浏览”按钮并打开一个新窗口时,脚本会停止进一步执行并且会卡住。我在FireFox和IE驱动程序中都试过了,但无济于事。我也尝试过调用一个autoitexe文件,但是当点击浏览按钮打开新窗口时,特定的语句Runtime.getRuntime().exec("C:\\Selenium\\ImageUpload_FF.exe")无法执行。请帮忙 最佳答案 这应该适用于Firefox、Chrome和IE驱动程序。FirefoxDr

Java Robot Keypress 命令键

Mac上的命令键的VK_[key]代码是什么(如果存在)?我正在尝试让机器人(java机器人)按下命令键。我正在使用命令keyPress(),我需要知道mac上命令键的整数键码。 最佳答案 KeyEvent.VK_META,键代码为157,是Java的虚拟键,映射到Mac命令键。 关于JavaRobotKeypress命令键,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1541