keyPress()不捕获按键事件AWT

时间:2018-12-22 09:58:22

标签: java awt

为了熟悉类机器人,机器人决定制作一个程序来控制游戏《我的世界》中的角色,但不幸的是,此代码在游戏中不起作用。字母印在笔记本上,但无法让角色走出游戏。

import java.awt.*;
import java.awt.event.KeyEvent;

public class Main {
    public static void main(String[] args) {
        try {
            Robot robot = new Robot();
            robot.keyPress(KeyEvent.VK_W);
            robot.delay(1000);
            robot.keyRelease(KeyEvent.VK_W);
        } catch (AWTException e) {
            e.printStackTrace();
        }
    }
}

1 个答案:

答案 0 :(得分:1)

它应该可以正常工作,因为它就像任何用户一样按下和释放键。请注意,您应该在 机器人按下键的同时专注于游戏,否则对于当前关注的应用程序,它将按下键。

请关注

  • 为漫游器robot.delay(5000);添加初始延迟
  • 运行机器人程序
  • 切换到游戏或专注于您要按此键的应用程序
  • 等待机器人行动!

无论应用程序是什么,机器人都会盲目地按下并释放键。