Java 我需要制作一个JFrame或JDialog,即使您更改了窗口,它也会保持焦点,以便keylistener能够监听

Java 我需要制作一个JFrame或JDialog,即使您更改了窗口,它也会保持焦点,以便keylistener能够监听,java,swing,jframe,keylistener,jdialog,Java,Swing,Jframe,Keylistener,Jdialog,我需要有一个框架或对话框,保持重点,即使我改变窗口。 我正在构建一个自动Clicker,它需要在另一个窗口中单击来侦听我的keyListener,以便用户能够启动/停止它 d.setModalityType(ModalityType.APPLICATION_MODAL);// d is my JDialog d.addKeyListener(this); d.setAlwaysOnTop(true); d.toFront(); d.requestFocus

我需要有一个框架或对话框,保持重点,即使我改变窗口。 我正在构建一个自动Clicker,它需要在另一个窗口中单击来侦听我的keyListener,以便用户能够启动/停止它

    d.setModalityType(ModalityType.APPLICATION_MODAL);// d is my JDialog
    d.addKeyListener(this);
    d.setAlwaysOnTop(true);
    d.toFront();
    d.requestFocus();

    d.setFocusableWindowState(true);

    d.setFocusable(true);

有真正的方法可以做到这一点,而且,这是违反直觉的。如果您的窗口具有焦点,则需要事件的其他窗口无法注册键入。相反,您将需要通过使用JNI/JNA来研究全局事件监视器的使用,以连接到操作系统的本机事件队列。感谢我将尝试并理解JNI。