首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Java Robot类不会与应用程序交互?

Java Robot类不会与应用程序交互?
EN

Stack Overflow用户
提问于 2018-08-09 05:32:19
回答 1查看 532关注 0票数 0

我一直在研究这个问题,但还没有找到一个对我有意义的答案。

我正在尝试用Java编写一个程序来与应用程序交互,看看我是否可以编写一个程序来为我玩视频游戏。这个游戏在我的电脑上。

以下是代码的摘录:

代码语言:javascript
复制
public static void main(String[] args) throws java.io.IOException {

    Runtime run = Runtime.getRuntime();

    run.exec("open /Applications/OpenEmu.app");

    try {

        Robot robot = new Robot();


        System.out.println("Waiting 5 Seconds");
        //robot.delay(5000);

        System.out.println("Pressed X");
        robot.keyPress(KeyEvent.VK_X);
        robot.keyPress(KeyEvent.VK_X);
        robot.keyPress(KeyEvent.VK_X);
        robot.keyPress(KeyEvent.VK_X);
        //Starts an easy mode game

它可以很好地打开应用程序,并且在记事本之类的东西中,它将输入XXXX,但它不会在游戏中这样做?

我已经将键盘上的“x”键指定为游戏的命令按钮。我的猜测是“x”新闻是内部的。感谢所有的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-09 05:50:16

如果您正在尝试模拟输入,也可以尝试添加robot.keyRelease。机器人的Javadoc对keyPress说:“按一个给定的键。这个键应该使用keyRelease方法释放。”

代码语言:javascript
复制
    System.out.println("Pressed X");
    robot.keyPress(KeyEvent.VK_X);
    robot.keyRelease(KeyEvent.VK_X);
    ...

还要记住这一点:https://docs.oracle.com/javase/7/docs/api/java/awt/Robot.html“请注意,有些平台需要特殊的特权或扩展才能访问低级输入控制。”

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51755937

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档