关闭所有 Java 子窗口

haz*_*zzz 2 java swing jdialog

在Java Swing中,有没有办法找到并关闭JDialog 当前显示的所有对象?

我有一个大型应用程序,有多个部分可以调用来显示对话框,但我希望能够从一个点检测并关闭它。

And*_*son 6

保留对每个对话框的引用(可能在一个集合中)。需要时,迭代集合并调用dialog.setVisible(false).

正如@mKorbel 所建议的,您还可以使用:

Window[] windows = Window.getWindows();
Run Code Online (Sandbox Code Playgroud)

您只需要在迭代数组并关闭窗口时检查“父”窗口。