作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何在鼠标事件(x/y 坐标、加速度等)到达第三方应用程序之前通过 Java 拦截和修改它们?
应用程序是预先已知的(因此,如果有帮助的话,类似“java myApp 3rdPartyApp”的内容是可能的)。请注意,第三方应用程序可能非常占用资源。
我想我要问的是如何制作一个Java应用程序作为真实鼠标事件和第三方应用程序之间的层,以便第三方应用程序接收修改后的事件而不是原始事件由操作系统发送?这对于 Java 来说是可能的吗?
最佳答案
您有 2 个纯 Java 解决方案。
首先,您可以连接到 AWT 事件队列并获取所有 UI 事件:Toolkit.getDefaultToolkit().getSystemEventQueue()
不幸的是,我不确定您可以修改这些事件,但您可以阅读它们并且可以模拟事件。
其次,您可以在第三方应用程序上创建透明窗口,您可以在其中捕获所有 UI 事件,然后使用 java.awt.Robot
模拟它们。请参阅here如何创建透明窗口。我尝试了这个方法,发现效果很好。
关于java - 拦截并修改发往第三方应用程序的鼠标事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7645011/
我想使用 XMLRPC 接口(interface)从 OpenERP/Odoo 读取对象。当我调试响应时,我会发现所有时间戳都没有毫秒部分。 是否可以更改 OpenErp/Odoo 设置以便我获取毫秒
我是一名优秀的程序员,十分优秀!