我正在尝试使用awt.robot模拟其他程序中的左键单击,其代码如下:
int mask = InputEvent.BUTTON1_DOWN_MASK;
bot.mouseMove(x, y);
bot.mousePress(mask);
bot.mouseRelease(mask);
虽然这是将鼠标移动到屏幕的正确部分,但其他程序似乎没有接收到点击。我做错了什么?
在某些其他程序中,同样的方法会产生单击,但在一个程序中,它没有效果。
我已尝试Thread.sleep()
在mouseMove和mousePress之间等待30-300毫秒,但它没有效果。
我是否需要使用JNI和本机Windows API来实现这一目标?我在Windows 8上。
答案 0 :(得分:1)
您使用了错误的面具:InputEvent.BUTTON1_MASK
答案 1 :(得分:0)
您是否在bot.delay(n)
和bot.mousePressed(mask)
之间尝试了bot.mouseReleased(mask)
?