如何在关闭第一个窗口后打开一个新窗口?

时间:2012-11-23 23:33:07

标签: java swing window frame

我在这个程序中工作的用户被问到,对于不同类型的数据,但每种类型的数据都取决于以前的数据。所以我创建了三个框架,其中我放置了第一个测验,现在我想要的是打开一个新窗口,当用户按下一个按钮(下一个)时,它同时关闭第一个。我到目前为止尝试的是当用户按下该按钮时更改布尔变量(下一步),但是,我不知道如何从新类引用这最后一个变量。我在上下文中遇到了麻烦,因为你可以给我一个更好的方法来解决这个问题。

3 个答案:

答案 0 :(得分:1)

打开和关闭窗口并不复杂,只需创建窗口实例(例如JFrame或JDialog)并在其上调用setVisible(true)setVisible(false)。但话说回来,你用了多少个商业应用程序,窗户被用户肆无忌惮地抛出?很少,因为它是用户界面的噩梦。相反,您的用户可以使用CardLayout来支持和交换视图,对于您偶尔需要以模态方式获取信息的实例,请使用模态对话框,例如设置为模态或JOptionPane的JDialog。

答案 1 :(得分:0)

我认为您可以通过在(下一步)按钮的ActionListener方法中键入以下行来实现:

dispose();
NewJFrame n = NweJFrame();
n.setVisible(true);

dispose();将关闭您之前的窗口,而另一个新窗口假设这两行将打开名为NewJFrame的

NewJFrame n = NweJFrame();
n.setVisible(true);

但在此之前,您必须编写NewJFrame的代码,就像您为之前的窗口编写的那样。

答案 2 :(得分:0)

这段代码只有一半成功。

Form2 f2 = new Form2();
if (f2 is Form2)
{
    f2.Show();
    this.Close();
}
else 
{
    Form1 f1 = new Form1();
    f1.Show();
}