Java 鼠标监听器

标签 java eclipse mouse pressed

这可能听起来简单而愚蠢,但对于我来说,我无法找到一种方法来让鼠标监听器执行 mousePressed 而不必在组件上。 void mousePressed(){} 似乎没有按照我想要的方式工作。

本质上,我正在制作一个 java 程序,旨在在没有图形的情况下工作,并在后台执行操作。因此,如果您在 chrome 中单击,它仍然会影响该程序。

我正在尝试的是这个,我意识到这是非常不正确的。

class MKeyListener extends KeyAdapter {
    @Override
    public void keyPressed(KeyEvent e) {
        moveMouse.playing = false;
    }
}

正如推荐的那样,我尝试了 JNativeHook 库,但它似乎并没有按照我认为应该的方式工作:

public class mousepresstest implements NativeMouseInputListener{

    @Override
    public void nativeMouseClicked(NativeMouseEvent e) {
        System.out.println("worked");
    }
}

它不会在按下鼠标时打印文本,我在这里遗漏了什么吗?

最佳答案

Java 鼠标监听器仅适用于 swing/awt 组件,而且来自同一运行进程。

如果您想监听来自其他应用程序的鼠标/键盘事件,请使用 JNativeHook library.You can install a global keyboard hook and listen for keypress or a mousehook for mouse events.You don't need to use Swing or other GUI classes.

JNativeHook 在内部使用 JNI 来提供这些功能。

关于Java 鼠标监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20649536/

相关文章:

java - 变量尚未初始化,而我已经初始化了

java - 如何使用数组在 Java 的一行中创建多个字符串和整数值?

java - lombok项目中的@Data可以识别但无法工作

android - 在Android手机上模拟USB鼠标指针输入?

java - 程序未检测到鼠标点击

java - 使用 JAVA 通过 REST API 集成 Keycloak 时在 toRepresentation() 获取 404

java - 还有一个关于java中的接口(interface)、类和构造函数的问题

java - 在 Android 中未收到位置更新

java - JRE 系统库 - 不支持的主要.次要版本 52.0

javascript - 应用实验室鼠标坐标