java - 即使应用程序有子窗口也能保持焦点

标签 java swing focus focuslistener

我需要实现一个例程,确保应用程序永远不会失去其他应用程序的焦点(但是,当它最小化时,我不应该强制它返回)。所以我决定在主窗口中实现WindowFocusListener:

public class DialogoPrincipal extends JFrame implements WindowFocusListener {

    public DialogoPrincipal() {
        initComponents();
        this.addWindowFocusListener(this);
    }

    @Override
    public void windowGainedFocus(WindowEvent e) {
        //Do nothing
    }

    @Override
    public void windowLostFocus(WindowEvent e) {
        this.toFront();
    }

    /*hidden code*/
}

当主窗口不显示任何子窗口时它效果很好。但是当打开一些子窗口时,我无法强制应用程序的焦点。 有没有办法可以强制应用程序获得焦点,即使应用程序有子窗口,或者我需要在所有对话框中实现 WindowFocusListener? 如果我需要实现这个接口(interface),我该怎么做才能让 JOptionPane.showMessageDialog(...) 不失去焦点?

最佳答案

关于java - 即使应用程序有子窗口也能保持焦点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14157665/

相关文章:

java - 如何在ConfirmDialog 中更改焦点?

java - App Engine - 如何将 JSON 传递到队列

java - 使用 JarJar 重新打包工具

javascript - Blur() 不适用于这种情况?

java - 关于在 Swing 页面上添加容器的问题

java - 预加载图像以用作 JLabel 图标

java - 如何使用 Java 在 Selenium WebDriver 中将鼠标移动到元素上来设置焦点?

java - 如何解决这个无限 while 循环?

java - Eclipse 中安装的 JRE 中的 "Standard VM"和 "MacOS X VM"有什么区别?

java - 将谷歌地图与java swing应用程序一起使用?