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)以使其正常工作嗎?