如何在主JFrame表单的开头显示JDialog?

时间:2013-10-24 03:05:54

标签: java netbeans

晚上好,

我正在使用一个简单的Java应用程序。我已经卡住了,我需要一些帮助。这是我们在Java Programming类中开展的一个项目。

我创建了一个JFrame表单和几个JDialog表单,我使用位于JFrame表单上的按钮成功调用。对于其中一个JDialog表单( dlg_create_company ),我希望在应用程序启动时立即弹出作为模态窗口。到目前为止,我已经尝试从JFrame表单的main方法调用代码,但我遇到了“无法在静态上下文中调用非静态变量”错误。

以下是我正在尝试的内容:

    //Create a new instance of my JDialog "dlg_create_company" and assign it to "dialog"
    //Then set it's visibility to true.
    dlg_create_company dialog = new dlg_create_company(new javax.swing.JFrame(), true, current_company);
    dialog.my_parent = this; //sets form frm_repair_shop as the parent via the my_parent reference.
    dialog.setVisible(true);

非常感谢任何帮助。 Here's a link我整个项目的拉链。

1 个答案:

答案 0 :(得分:2)

当然,您无法在非静态上下文中访问静态变量。这是因为静态变量“一直存在”,而非静态对象可能存在或不存在。您需要在JFrame的构造函数中显示该对话框,并使它们都可见。首先是JFrame,之后是JDialog

请发布SSCCE而不是链接到ZIP文件。也许明天人们会开始链接到他们的Github,要求我们调试它。

public MyJFrame(){
    // add components
    // call pack and stuff
    // instantiate the JDialog
    // make JFrame visible
    // make the JDialog visible
}