Исключение Nullpointer при передаче JButton actionListener другому классу Java - PullRequest
0 голосов
/ 28 июля 2011

У меня есть два класса (Main_Menu и CancelListener).Когда я вызывал экземпляр моего CancelListener, чтобы использовать правильный метод actionPerformed, я получал NullPointerException.

В моем классе MainMenu.java, я объявляю кнопку следующим образом:

JButton button = new JButton();
button.addActionListener(new CancelListener());

Вот мой класс CancelListener ().1014 * - это JPanel со структурой CardLayout.На кнопке «Отмена» я хочу показать определенную панель.Я хотел отделить мой класс представления кнопок от логики кнопок?это работает, когда я не использую отдельный класс.

1 Ответ

3 голосов
/ 28 июля 2011

Вам необходимо установить переменную menu:

В классе CancelListener:

private Main_Menu menu;

public CancelListener(Main_Menu menu) {
    this.menu = menu;
}

Тогда при построении:

button.addActionListener(new CancelListener(this));
...