Java Swing GUI 无法获得 JPanel



我在IntelliJ中创建了一个基础Swing UI Gui表单。我的测试。form文件有一个名为mainpanel的面板。当我现在想在test.java类中使用面板时,我得到一个错误,即以下异常:线程"main"java.awt.IllegalComponentStateException: contentPane不能设置为空。在调试模式下,我看到,变量mainPanel是空的,但IntelliJ有面板符号的前面的行来显示,这是链接到面板在.form文件。

public class test extends JFrame {
private JPanel mainPanel;
public test(){
super("Flight Details");
setLayout(new BorderLayout());
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setContentPane(mainPanel);
this.pack();
this.setSize(1000, 800);

}

public static void main(String[] args) throws MalformedURLException {
JFrame frame = new test();
frame.setVisible(true);
}
}

带有属性的组件树截图

谢谢你的帮助。

您声明了Panel,但没有初始化它。在超级线的正下方添加线mainPanel = new JPanel();。它应该能解决你的问题。你应该复习一下声明和初始化的概念,以避免以后出现类似的错误。

相关内容

  • 没有找到相关文章

最新更新