我正在尝试从我的 Java 程序向游戏模拟器发送键盘命令,我知道如何从 processbuilder
设置 process
并运行该进程。
但是,我在从我的Robot
发送进程键盘命令时仍然遇到问题。
InputStream
不会有太大帮助,因为我需要发送 keyEvents
,例如按下“y”按钮并让模拟器做出相应响应。
最佳答案
您需要将您的应用程序/控制台窗口作为 Activity 窗口,以便将按键发送到那里。我建议作为第一个测试,运行您的 Java 应用程序,但在开始按键之前添加 10 秒的延迟。然后,手动单击并激活模拟器窗口并等待自动按键开始。
此外,在按键之间添加 500 毫秒的延迟(例如使用 Thread.sleep() ),因为多次按键效果不佳。
另见:Using Java to set the focus to a non Java application in Windows
关于java - 向进程发送 KeyEvents,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15603209/