我正在做一些与Java的Swing GUI工作,我认为我的问题相当简单;如何设置鼠标的位置?如何在Java中设置鼠标的位置?
回答
您需要使用Robot
此类用于为测试自动化,自运行演示,并在需要控制鼠标和键盘的其他应用程序的目的本地系统输入事件。 Robot的主要目的是促进Java平台实现的自动化测试。
使用该类生成输入事件不同于将事件发布到AWT事件队列或AWT组件,因为事件是在平台的本机输入队列中生成的。例如,
Robot.mouseMove
将实际移动鼠标光标,而不是只生成鼠标移动事件的...
退房的Robot类。
正如其他人所说,这可以使用Robot.mouseMove(x,y)
实现。然而,这种解决方案在多显示器情况下工作时会出现问题,因为机器人使用主屏幕的坐标系统工作,除非您另行指定。
这里是一个解决方案,允许您通过任何基于点全局屏幕坐标:
public void moveMouse(Point p) {
GraphicsEnvironment ge =
GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice[] gs = ge.getScreenDevices();
// Search the devices for the one that draws the specified point.
for (GraphicsDevice device: gs) {
GraphicsConfiguration[] configurations =
device.getConfigurations();
for (GraphicsConfiguration config: configurations) {
Rectangle bounds = config.getBounds();
if(bounds.contains(p)) {
// Set point to screen coordinates.
Point b = bounds.getLocation();
Point s = new Point(p.x - b.x, p.y - b.y);
try {
Robot r = new Robot(device);
r.mouseMove(s.x, s.y);
} catch (AWTException e) {
e.printStackTrace();
}
return;
}
}
}
// Couldn't move to the point, it may be off screen.
return;
}
它在Linux平台上工作吗? – 2014-07-24 14:40:40
@丹尼尔 - 自从你在这里回复已经有好几年了,但今天我找到了它,并且它解决了我多年来无意中通过鼠标点击重新定位文本光标所遇到的问题。我很想试用Robot.mouseMove,直到我阅读你的评论。奇怪的是,我刚开始使用多显示器设置!既然你使用了我不熟悉的类,我感到震惊的是我所要做的只是复制你的代码,做一些导入,然后调用它。做得好!谢谢!! – DSlomer64 2015-02-17 18:15:07
- 1. 如何设置鼠标位置?
- 2. 设置鼠标位置
- 3. 设置鼠标位置
- 4. 如何在元素的中心设置鼠标位置为0,0?
- 5. 如何从Windows中的鼠标钩子设置光标位置?
- 6. java的鼠标位置
- 7. 如何在C上设置鼠标光标位置?
- 8. firemonkey设置鼠标光标位置
- 9. 从鼠标位置设置X坐标
- 10. 如何在pygame中设置鼠标光标在物体中心的位置?
- 11. 在mac上的visual studio中设置鼠标光标位置
- 12. 在鼠标位置
- 13. 鼠标在屏幕上的Java位置
- 14. 如何在java中返回我的鼠标指针的位置?
- 15. 如何在当前鼠标位置设置工具提示?
- 16. Python设置鼠标位置跨平台
- 17. Qt - 设置相对鼠标位置
- 18. 设置鼠标位置不工作c#
- 19. 如何设置弹出面板显示在richFaces中鼠标光标的位置
- 20. 鼠标位置()
- 21. 在matplotlib中设置tickslabel会禁用鼠标光标位置
- 22. 如何在matlab中获取鼠标在我的设置轴上的位置?
- 23. 错误鼠标在WPF中的不同DPI设置的位置
- 24. 如何设置X11(linux桌面)下的鼠标位置?
- 25. CSS设置元素位置到鼠标位置上的事件
- 26. 在Java上跟踪鼠标位置WorldWind
- 27. 如何使相对于鼠标位置的标签位置
- 28. 如何获得坐标相对于鼠标位置的位置?
- 29. 鼠标光标在Javascript中的位置?
- 30. 如何在java中检测鼠标位置
很好,谢谢。这看起来正是我需要的。 – 2010-05-31 04:16:07