在显示主窗口之前打开配置对话框?

问题描述

| 我已经编写了一个具有主窗口的Swing应用程序。 现在,我想在显示主窗口之前显示一个配置对话框,因为根据配置对话框的输出,可能必须以其他方式创建主窗口。 我读过某个地方,对话框应该始终具有一个父窗口。 在这种情况下,创建和显示配置对话框的正确方法是什么?我应该将其设置为jdialog还是常规的JFrame?     

解决方法

        使用null引用父窗口。没有父母的情况下,这是一个好的做法。 那你就可以做这样的事情了
String body = \"Which will you choose?\";
String title = \"The Title\";

int choice = JOptionPane.showConfirmDialog(null,body,title,JOptionPane.YES_NO_OPTION);
switch(choice) {
case JOptionPane.YES_OPTION:
    createAndDoWindowForYesOption(); break;
case JOptionPane.NO_OPTION:
    createAndDoWindowForNoOption(); break;
default:
    doNothing(); break;
}
编辑:我仅使用JOptionPane作为示例,如@Mre所指出的,如果需要更多功能,则可以扩展到JDialog。     ,           我读过某个地方,对话框应该始终具有一个父窗口。 我不知道有任何此类限制。这是一个简单的反例。