Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Robot类的javabot_Java - Fatal编程技术网

使用Robot类的javabot

使用Robot类的javabot,java,Java,我正在尝试使用Robot类创建一个游戏机器人。 我尝试了以下代码来执行鼠标右键单击: robot.mousePress(InputEvent.BUTTON3_MASK); robot.mouseRelease(InputEvent.BUTTON3_MASK); 它成功了 我正在客户端3d在线游戏上测试它 按“1”键应该会在我身上执行某种移动,当我尝试以下代码时,它不起作用: robot.keyPress(KeyEvent.VK_1); robot.keyRelease(KeyEvent.VK_

我正在尝试使用Robot类创建一个游戏机器人。 我尝试了以下代码来执行鼠标右键单击:

robot.mousePress(InputEvent.BUTTON3_MASK);
robot.mouseRelease(InputEvent.BUTTON3_MASK);
它成功了

我正在客户端3d在线游戏上测试它

按“1”键应该会在我身上执行某种移动,当我尝试以下代码时,它不起作用:

robot.keyPress(KeyEvent.VK_1);
robot.keyRelease(KeyEvent.VK_1);
但当我在聊天游戏中使用该代码时,它确实起了作用

它经过了一次又一次的测试,我一直得到同样的结果


是我做错了什么吗?还是游戏检测到我不是那个按那个键的人。

你可能释放键太快了。释放钥匙前,尝试睡眠30~60毫秒:

robot.keyPress(KeyEvent.VK_1);
try {
    Thread.sleep(50);
} catch(Exception e) {
    e.printStackTrace();
}
robot.keyRelease(KeyEvent.VK_1);

您可能释放钥匙太快了。释放钥匙前,尝试睡眠30~60毫秒:

robot.keyPress(KeyEvent.VK_1);
try {
    Thread.sleep(50);
} catch(Exception e) {
    e.printStackTrace();
}
robot.keyRelease(KeyEvent.VK_1);

@如果它解决了你的问题,你应该已经能够接受尼诺的答案,我不认为这会限制任何人接受答案的能力。@ImriPersiado如果它解决了你的问题,你应该已经能够接受尼诺的答案,我不认为这会限制任何人接受答案的能力。