关闭一个JFrame而不关闭另一个?

Kea*_*ing 53 java swing jframe

我想同时显示两个(或更多)JFrame.
当我关闭其中一个(使用默认关闭按钮)时,其他帧仍应可见.

我怎样才能做到这一点?

Pet*_*ang 85

如果您希望应用程序在JFrame关闭时终止,请使用

setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE)
Run Code Online (Sandbox Code Playgroud)

代替

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Run Code Online (Sandbox Code Playgroud)

文档:

  • DO_NOTHING_ON_CLOSE(在WindowConstants中定义):不要做任何事情; 要求程序在已注册的WindowListener对象的windowClosing方法中处理该操作.
  • HIDE_ON_CLOSE (在WindowConstants中定义):在调用任何已注册的WindowListener对象后自动隐藏框架.
  • DISPOSE_ON_CLOSE (在WindowConstants中定义):在调用任何已注册的WindowListener对象后自动隐藏和处置框架.
  • EXIT_ON_CLOSE(在JFrame中定义):使用System exit方法退出应用程序.仅在应用程序中使用它.

在澄清问题之前,这是我的答案,可能仍然有用:

你可以用setVisible(false)你的JFrame,如果你想再次显示相同的帧.
否则调用dispose()删除所有本机屏幕资源.