0

可能重复:
在 JAVA 中关闭 JFrame 事件 - 不起作用

我有 2 个 JFrame。第一个 JFrame 是我程序中的主窗口。当我们单击按钮时,会出现第二个 JFrame。当第二个 JFrame(称为设置)可见时,第一个 JFrame,主程序的窗口被禁用setEnabled(false)。当我关闭设置窗口时,我的主窗口没有再次启用。看我的代码。我把指令放在那里,setEnabled(true)所以它应该可以工作。

    FrameSettings.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
    FrameSettings.addWindowStateListener( new WindowAdapter() {
        public void windowClosing(WindowEvent evt) {
            setEnabled(true);
        }
    });
4

2 回答 2

0

删除这个:

FrameSettings.setDefaultCloseOperation(
    javax.swing.WindowConstants.DISPOSE_ON_CLOSE);

并改变这个:

FrameSettings.addWindowStateListener( new WindowAdapter() {
    public void windowClosing(WindowEvent evt) {
        setEnabled(true);
        FrameSettings.dispose();
    }
});
于 2012-12-19T21:08:56.397 回答
0

做这个 :

我将调用第一个 JFrame 类 mainView:

mainView object=new mainView();
obj.setVisible(true);

此外,而不是setEnabled(false)在打开设置 JFrame 时将 mainView 可见性设置为 false。

您不必禁用视图。

[编辑]

setEnabled(true)不起作用,因为你再次调用 JFrame 2。要启用 JFrame1,请创建一个对象,然后启用它。

JFrame1 o=new JFrame1();
o.setEnabled(true);
于 2012-12-19T21:31:38.257 回答