0
问题:Java的机器人MousePress()不工作在Windows任务管理器
的Java机器人的MousePress()工作的时间细99%,但它不能在Windows 8.1或10的任务管理器的工作(我没有测试7或更低)。
事实上,当选择任务管理器窗口时,即使MouseMove()也会失败。
要复制:
- 使用下面的代码,运行一次看到代码工作。
- 打开任务管理器(CTRL + Shift + Escape),运行代码,然后快速 选择任务管理器窗口。代码将完成执行,但鼠标位置不会改变。
代码:
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.MouseEvent;
public class RobotMousePressTest {
public static void main(String[] args) throws AWTException, InterruptedException {
System.out.println("Started. Waiting for sleep to finish.");
Robot r = new Robot();
Thread.sleep(3000);
r.mouseMove(4, 4);
r.mousePress(MouseEvent.getMaskForButton(MouseEvent.BUTTON1));
System.out.println("Click!");
}
}
问题:
- 有谁知道是否有一种方法,使反正它的工作?
- 是否有可用于MousePress()和MouseMove()的替代库?
- 我会被迫使用本机代码(JNI)以使其正常工作吗?