Создатель графического интерфейса IntelliJ: JPanel выдает исключение нулевого указателя во время выполнения при добавлении любого компонента.

У меня возникла проблема с созданием графического интерфейса IntelliJ для Java. Большая часть кода панели, к сожалению, скрыта в средстве создания графического интерфейса и недоступна для редактирования мной.

Я создал пустой JPanel "questionPanel" с ItelliJ GridLayoutManager. Когда я пытаюсь добавить что-либо на эту панель, я получаю исключение нулевого указателя, хотя панель определенно не является нулевой. Я также попытался добавить JTextField в макет (из любопытства), и это тоже не помогло. Появляется JTextField, но я все еще не могу ничего добавить из кода.

Когда я меняю диспетчер компоновки на что-либо другое (GridBagLayout, FormLayout, BorderLayout и т. д.), я больше не получаю ошибок, но ничего не появляется.

DisplayView.java

private JPanel questionPane;

public void initialize()
{
    questionPane.addMouseListener(new MouseListener() {

        @Override
        public void mouseReleased(MouseEvent e) {
            questionPane.add(new JLabel("Test"));
            System.out.println("Click event received.");
        }
        //other overrides hidden
}

Есть ли у кого-нибудь идеи о том, что происходит за кулисами, или как мне вывести компоненты на панель? Спасибо.

Пример трассировки стека (эта трассировка не выполняется тем же кодом, что и выше, но это та же ошибка):

Exception occurred during event dispatching:
java.lang.NullPointerException

at com.intellij.uiDesigner.core.GridLayoutManager.addLayoutComponent(
GridLayoutManager.java:134)

at java.awt.Container.addImpl(Container.java:1074)
at java.awt.Container.add(Container.java:365)
at [MyProject].UI.View.DisplayView$1.actionPerformed(DisplayView.java:91)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
.....
11
задан kevin948 9 March 2012 в 19:21
поделиться