我正在使用 IntelliJ 开发 Java Swing。我拖放各种 UI 组件。我对 Java Swing 完全陌生。我可能会问非常基本的问题。所以我的困惑是,当我选择任何组件并将它们添加到主窗体时,这些组件是否已经初始化。我看到我的代码中出现空指针异常:-
public class MyForm {
private JButton btnRead;
private JComboBox cbCodes;
private JPanel mainPanel;
private DefaultComboBoxModel comboBoxModel;
public MyForm(){
comboBoxModel = new DefaultComboBoxModel();
cbCodes = new JComboBox(comboBoxModel); // Assignment to UI-bound field will overwrite field generated by UI Designer
this.mainPanel.add(cbCodes);
}
}
我收到警告“分配给 UI 绑定字段将覆盖 UI 设计器生成的字段”。如果我不收缩
cbCodes = new JComboBox(comboBoxModel);
我就会得到空指针异常。我很困惑该怎么办?如何避免警告?或者我只是无视警告?
我知道这篇文章很旧,但我似乎也有类似的问题,我学习开发还不到一年,我确实达到了 GUI 编辑器令人讨厌的地步,并试图徒手编写更多的 swing 组件,但是我也有类似的错误。人们可以在某个地方讨论初学者常见的挥杆错误,这对我很有用。