在javadoc上,HIDE_ON_CLOSE默认选项表示
在调用任何已注册的WindowListener对象后自动隐藏框架。
现在意味着什么“隐藏”?实体对象被破坏或只是隐藏并继续使用资源?
答案 0 :(得分:6)
在javadoc上,HIDE_ON_CLOSE默认选项表示
在调用任何已注册的WindowListener对象后自动隐藏框架。
现在意味着什么“隐藏”?实体对象被破坏或只是隐藏并继续使用资源?
HIDE_ON_CLOSE
与JFrame.setVisible(false)
,
然后JFrame
只有hiden,不可见,不会以某种方式被破坏(JFrame.dispose()
也是如此),JFrame.setVisible(true)
再次可以看到它并且没有任何变化
修改
@giozh写道,如果我想破坏jframe(不关闭 整个申请)?
默认情况下没有任何理由,因为默认情况下没有理由创建另一个JFrame
,请不要这样做,请使用CardLayout
(如果JFrame.pack()
是否需要在屏幕上更改JFrames
尺寸
and all those Object
stays and increasing JVM memory, never will be CG'ed
,那么JFrame.HIDE_ON_CLOSE
,JFrame.DISPOSE_ON_CLOSE
或JFrame.setVisible(false)
(在您讨厌CardLayout
的情况下),您可以从JComponents
删除所有JFrames ContentPane
,然后添加新的JComponents
,设置{{1并且最后一行代码行(对已经可见的LayoutManager
的所有更改完成后)将是JFrame
,JFrame.(re)validate();
和JFrame.repaint();
答案 1 :(得分:0)
将其隐藏在后台而不会破坏它,将其保存在内存中
答案 2 :(得分:0)
HIDE_ON_CLOSE
意味着它只会消失,但会在后台运行并消耗资源,但屏幕上不可见。
但是,使用EXIT_ON_CLOSE
会使其消失并杀死应用程序(如果您想真正关闭应用程序,请使用此选项)