在输入Robot并在此过程中移动光标时,缺少修饰键。导致使用“ a”而不是“ A”,“;”的Ofc而不是“:”等等。
如果我不触摸触控板,打字或多或少会很不错:99-100%的成功字符。相反,如果我要移动光标,则成功字符最多为0%。
public static void main(String[] args) throws Exception {
Robot r = new Robot();
r.setAutoDelay(10);
//time for switching to text editor window
Thread.sleep(2000);
for (int i = 0; i < 100; i++) {
r.keyPress(KeyEvent.VK_SHIFT);
r.keyPress(KeyEvent.VK_A);
r.keyRelease(KeyEvent.VK_A);
r.keyRelease((KeyEvent.VK_SHIFT));
}
}
此外,控制台中有错误
java [5305:1391464] pid(5305)/ euid(501)在非主线程环境中调用TIS / TSM,错误:不允许这样做。请在主线程中致电TIS / TSM!
问题对于MacOS是实际的。相同的代码在Windows 10上可以完美运行。
关于如何解决或至少要解决的任何想法?