我已经看到很多关于使用MouseEvent
的双击事件的线程。但这不是我想要的。我最近开始使用Robot
课程,并且遇到了一些鼠标功能,例如mouseMove(x,y)
,mouseRelease(int buttons)
。
Robot
类也提供mousePress(int button);
函数。我试过这个。
Robot robot = new Robot();
robot.mouseMove(305, 450);
robot.mousePress(InputEvent.BUTTON1_DOWN_MASK);
robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);
但这是单击事件。我想要实现的是使用Robot
类的双击事件。是否有可能实现这一目标?如果是这样。怎么样?
答案 0 :(得分:3)
Robot
类不提供双击方式。你必须自己实现它。想想双击真的是什么,快速连续两次点击。 (根据您的操作系统设置,点击之间所需的时间可能会有所不同。)
所以你真的只需要快速点击两次:
Robot robot = new Robot();
robot.mouseMove(305, 450);
// first click
robot.mousePress(InputEvent.BUTTON1_DOWN_MASK);
robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);
// second click
robot.mousePress(InputEvent.BUTTON1_DOWN_MASK);
robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);
您可能还希望在两次点击之间添加几毫秒的延迟,因为某些内容可能无法很好地响应过快的点击。