如何关闭JFrame后跟另一个JFrame?

时间:2010-12-09 22:59:45

标签: java

我有一个JFrame面板。它打开了好几次。但是,我希望在新的打开之前关闭前一个。

有没有办法添加一些代码,暗示“当有触发器执行相同的JFrame时关闭此JFrame。”

它是相同的JFrame,但信息(JTextFields)发生了变化。

现在整个程序,只要有方法,对象就要调用JFrame:

statusbar sb = new statusbar();
        sb.setting();

如果我再次发表此声明,它将在其上打开另一个JFrame。但我想关闭前一个。

1 个答案:

答案 0 :(得分:3)

在类中为显示的当前帧保留一个静态变量。然后在类的构造函数中检查此变量。如果它不为null,则在变量上调用dispose()以关闭框架。您的代码可能类似于:

private static Jframe openFrame;
...
...
if (openFrame != null)
{
    openFrame.dispose();
}

openFrame = this;
  

statusbar sb = new statusbar();

此外,使用适当的类命名约定。类名称的单词应该大写(即StatusBar)。