我有一个名为 MyFrame 的 JFrame
在构造函数MyFrame()
中,我有一个 if 条件
MyFrame() {
if(condition) {
openFrame();
}
}
如果条件不成立,我不想打开框架。它仍然打开一个空白框架。
问题是您在condition
创建新的MyFrame
. 如果条件为假,则跳过openFrame()
,这可能会添加内容,但MyFrame
仍然存在。您可能应该将if
声明放在任何调用的地方new MyFrame()
。
尽量避免上的条件constructor
。
最优选的方式是
if (condition) {
MyFrame frame = new MyFrame();
}
初始化JFrame
inif
条件而不是在初始化后检查条件。它将解决您的问题。
您需要在构造函数之外进行此条件检查。如果满足该条件,您就不想拥有一个框架,所以一开始就不要费心创建一个。
因为您在某个地方调用了 MyFrame 对象的 setVisible(true),这是使框架显示的唯一方法调用。