Java Awt Robot改变Windows鼠标速度

Java Awt Robot改变Windows鼠标速度,第1张

概述Java Awt Robot改变Windows鼠标速度

每次使用Robot移动鼠标时,都会重置windows鼠标的速度。 这真是烦人的处理,我想知道如果有人知道如何解决这个问题。 这里基本上是我搞乱的代码:

Robot robot = new Robot(); robot.mouseMove(10,1070); robot.delay(300); robot.mousepress(inputEvent.button1_MASK); robot.mouseRelease(inputEvent.button1_MASK); robot.delay(300); robottype("notepad"); robot.keyPress(KeyEvent.VK_ENTER); robot.keyrelease(KeyEvent.VK_ENTER); robot.delay(400); robottype("I am writing this.");

这样做只需单击开始button,键入“记事本”,打开记事本,然后键入“我正在写这个”。

robottype()只是一个快捷的函数,它将string转换为一系列键盘按下/释放。

在string中查找date和时间,并使用windows或cmd中的sed重新格式化删除空格

连接USB设备时启动我的应用程序

有没有免费的库,允许我在位图上使用卷积filter?

如何在windows上运行点子?

需要将maven的$ {project.basedir}从单个反斜杠转换为double

在windowsregistry中的MIMEtypes

如何在windows上运行Slack botkit?

Python的ctypes和没有足够的参数(4字节丢失)

SWT表格标题中的&符号的解决方法

在R中查找windows用户名

这似乎是一个windows错误,因为没有做任何事情本质上改变了鼠标的速度。 看来你可能会不幸运…

不是一个修复,而是一个解决方法:

使用JNA,您可以获取/设置鼠标速度(确认您在windows上运行)。 当程序启动时,请阅读鼠标速度。 然后在每个robot.mouseMove()恢复该值。

你需要添加jna.jar和jna.jar jna-platform.jar ,可以在这里找到: https : //github.com/java-native-access/jna/tree/master/dist

interface User32 extends com.sun.jna.platform.win32.User32 { User32 INSTANCE = (User32) Native.loadlibrary(User32.class,W32APIOptions.DEFAulT_OPTIONS); boolean SystemParametersInfo( int uiAction,int uiParam,Object pvParam,// Pointer or int int fWinIni ); } public static voID main(String[] args) throws AWTException { Pointer mouseSpeedPtr = new Memory(4); Integer mouseSpeed = User32.INSTANCE.SystemParametersInfo(0x0070,mouseSpeedPtr,0) ? mouseSpeedPtr.getInt(0) : null; //[...] rob.mouseMove(10,1070); if (mouseSpeed != null) { User32.INSTANCE.SystemParametersInfo(0x0071,mouseSpeed,0x02); } //[...] }

总结

以上是内存溢出为你收集整理的Java Awt Robot改变Windows鼠标速度全部内容,希望文章能够帮你解决Java Awt Robot改变Windows鼠标速度所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1274114.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存