2015-04-01 3 views
-1

Ну, у меня есть определенные кнопки на одном кадре, когда они нажимаются, они меняют цвет. У меня есть кнопка «X» наверху, которая размещает кадр. Когда я пытаюсь снова открыть рамку, она открывается, но когда я нажимаю эти кнопки, чтобы изменить цвет, их дважды кликнут?Проблема с удалением Java jframe

Я не понимаю, почему это происходит, я знаю, что его щелкают дважды, потому что если дважды щелкнуть, он возвращается к черному исходному цвету. Кроме того, я добавил System.out.println, чтобы определить, сколько раз он был выполнен, и дважды распечатывать его одним щелчком мыши.

Кто-нибудь знает, что происходит? И если да, можете ли вы мне помочь?

ответ

1

У вас есть ошибка в коде, который не показан - пожалуйста, покажите свой код.

Я угадываю сейчас, но, скорее всего, вы добавляете свои ActionListeners несколько раз в JButton. Напишите свой код так, чтобы ActionListener записывался на кнопку один раз, скажем, о создании класса в конструкторе, а не в каком-то другом слушателе. Для лучшей помощи, пожалуйста, укажите соответствующий код.

+0

Он работает нормально в первый раз, он ошибается только после удаления рамки и повторного открытия, после чего все не работает так, как должно быть – AcDSa

+0

@AcDSa: точно - потому что вы, вероятно, добавляете слушателя действий с первый вызов, возможно, в пределах самого самого ActionListener. Но опять-таки, почему мы догадываемся **? Пожалуйста, покажите свой соответствующий код. ** Серьезно ** –

+0

Извините, его часть графического интерфейса и много кода, какую часть кода вставить? – AcDSa

Смежные вопросы