Java Robot类中的鼠标移动问题

uuxin. 2018-08-31 01:37:38
Java Robot类,这个类中有一个方法,是mouseMove(int, int),他是让鼠标移动到一个坐标;

于是我这样:
Robot robot = new Robot();
robot.mouseMove(200,200);

本来以为鼠标可以移动到(200,200)这个像素点,
后来发现我真是想多了,
每次初始鼠标位置不同,他移动到的地方也就不同,根本不是(200,200),
比如这样,
将eclipse的窗口缩小后,移动eclipse的窗口到不同的位置!
这样每次点击运行的时候,鼠标就处于不同的位置,
然后鼠标移动到的位置也不同,
也就是说,鼠标移动到的位置,与鼠标的初始位置有关系,
但是具体是什么关系,
就不知道了,
所以,这到底是怎么回事?
...全文
1601 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Focusf 2019-12-07
  • 打赏
  • 举报
回复
我前一天还好的,突然也这样能有不换系统的解决方法吗
onelor 2019-09-25
  • 打赏
  • 举报
回复
加循环也没卵用,总是在两个鬼地方一直跳
我的是3000x2000屏,缩放250%
想看全国大赛 2019-04-09
  • 打赏
  • 举报
回复
应该是分辨率问题,你的win10系统是不是设置了显示缩放为125%,这样就导致了robot获取的位置不准确,你调回100%就好了
Unclezs 2019-02-26
  • 打赏
  • 举报
回复
可以加个循环实现, 循环10次执行moursemove()方法, 我是这样实现的准确定位
uuxin. 2018-10-20
  • 打赏
  • 举报
回复
引用 5 楼 weixin_39743360 的回复:
我也是 突然变这样的 鼠标处在不同位置 移动后的位置也每次都不一样 有什么办法解决吗

不好意思,我找到解决的方案后一直没看,是因为win10系统问题,换成win7就ok了
不念紧箍咒 2018-09-08
  • 打赏
  • 举报
回复
我也是 突然变这样的 鼠标处在不同位置 移动后的位置也每次都不一样 有什么办法解决吗
qq_39936465 2018-09-07
  • 打赏
  • 举报
回复
我测试下来,不管移动前坐标在哪里,鼠标最后移动到(200,200)没有任何问题。
uuxin. 2018-08-31
  • 打赏
  • 举报
回复
这跟(200,200)有什么关系?????
uuxin. 2018-08-31
  • 打赏
  • 举报
回复
Point mousepoint = MouseInfo.getPointerInfo().getLocation();
System.out.println("移动前坐标:" + mousepoint.x + " " + mousepoint.y);

利用这个得到鼠标移动前的坐标,
鼠标移动之后,再获取一次鼠标坐标
结果得到以下的关系:

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧