有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java(IntelliJ GUI设计器)运行时NullPointerException在向JPanel添加组件时发生

在IntelliJ插件上工作,并尝试通过单击JButtonJLabel组件添加到JPanel,这是我的代码片段

addLabelButton.addActionListener(new ActionListener() {
    @Override
    public void actionPerformed(ActionEvent e) {
        contentPane.add(new JLabel("Hi, JLabel!"));
        contentPane.revalidate();
        contentPane.repaint();
    }
});

单击JButton我得到一个运行时错误

2020-01-02 17:44:16,118 [ 30502] ERROR - llij.ide.plugins.PluginManager - null java.lang.NullPointerException at com.intellij.uiDesigner.core.GridLayoutManager.addLayoutComponent(GridLayoutManager.java:134) at java.desktop/java.awt.Container.addImpl(Container.java:1152) at java.desktop/java.awt.Container.add(Container.java:436)


共 (1) 个答案

  1. # 1 楼答案

    经过一番研究之后,我明白了重点。问题是,如果JPanelLayout Manager等于GridLayoutManager(IntelliJ),则无法将组件添加到JPanel

    如果您有相同的问题

    • 到达GUI Designer
    • 选择要向其添加组件的JPanel
    • 在属性面板中,将Layout Manager更改为GridLayoutManager(IntelliJ)FormLayout(JGoodies)以外的任何内容

    IntelliJ GUI Designer properties panel

    或以编程方式

    contentPane.setLayout(new BoxLayout());