我使用Java来使用Robot类生成鼠标按下:
robot.mousePress(InputEvent.BUTTON1_MASK);
robot.mouseRelease(InputEvent.BUTTON1_MASK);
但是,我希望机器人按下按钮一段时间。我怎样才能做到这一点?
答案 0 :(得分:10)
在两个动作之间稍微睡一会儿(以毫秒为单位):
<强> Thread.sleep(long millis);
强>
robot.mousePress(InputEvent.BUTTON1_MASK);
try { Thread.sleep(1000); } catch(Exception e) {} // Click one second
robot.mouseRelease(InputEvent.BUTTON1_MASK);
<强> Robot.delay(long millis);
强>
robot.mousePress(InputEvent.BUTTON1_MASK);
robot.delay(1000); // Click one second
robot.mouseRelease(InputEvent.BUTTON1_MASK);
答案 1 :(得分:0)
我做到了,很简单:当您检测到鼠标被按下时,您保存System.currentTimeMillis()
。当您检测到鼠标被释放时,您只需检查它被按下的时间。
如果您希望在一定时间后进行操作,即使仍然按下鼠标,您也会启动一个按下所需时间的线程,并在释放时中断它。如果线程没有在您想要的时间内中断,则将执行操作。