我刚在CustomUIPanel类中编写了这个测试代码:
public static void main(String[] args) {
final JDialog dialog = CustomUIPanel.createDialog(null,
CustomUIPanel.selectFile());
dialog.addWindowListener(new WindowAdapter() {
@Override public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
Run Code Online (Sandbox Code Playgroud)
它是正确的,如果CustomUIPanel.main()是程序的入口点,但它让我想知道:如果另一个类要求CustomUIPanel.main()测试怎么办?然后我的电话System.exit(0)是不正确的.
如果没有顶级窗口,有没有办法告诉Swing事件调度线程自动退出?
如果不是,如果目标是让所有顶级窗口关闭时程序退出,那么JDialog/JFrame在关闭时做什么是正确的?