如何使 swing/java 保持 运行 即使用户没有点击它

How to make swing/java keep running even when user doesn't click on it

假设我有一个类似于下面源代码的程序:

public class Main extends JFrame implements MouseListener {
    public Main() {
        this.setVisible(true);
        this.addMouseListener(this);
    }
    public static void main(String[] args) {
        new Main();
    }
    @Override
    public void mousePressed(MouseEvent e) {
        System.out.println("clicked!");
    }
}

为了 运行 这个程序并输出(在这种情况下,当用户点击 jframe 时显示“点击”)用户必须专门点击 jframe 但我想说如果用户点击任何地方给我看这个输出,但我不知道如何让程序做到这一点

您正在向 JFrame 添加鼠标侦听器;当然,只有在 在您的 jframe.

中发生点击时才会触发

一个好的 OS 不会让你在没有注册为辅助工具或以其他方式获得 root 访问权限的情况下这样做;在其他应用程序中看到点击是安全漏洞。

Java 不是编写 OS 特定程序的好工具,'I want to listen to clicks anywhere on any screen and in any app' 非常 OS 特定。

如果您坚持使用 java 进行此操作,可以查看 this answer 中的一些技巧。