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