Я пытаюсь заставить событие срабатывать всякий раз, когда делается выбор из JComboBox
.
Проблема в том, что у меня нет очевидного addSelectionListener()
метода.
Я пытался использовать actionPerformed()
, но он никогда не срабатывает.
Если не считать переопределения модели JComboBox
, у меня нет идей.
Как получить уведомление об изменении выбора на JComboBox
? **
Изменить: я должен извиниться. Оказывается, я использовал подкласс неправильного поведения JComboBox
, но я оставлю вопрос, так как ваш ответ хорош.
java
swing
jcombobox
itemlistener
Аллен Лалонд
источник
источник
Ответы:
Он должен отвечать на ActionListeners , вот так:
@ Джон Калсбек справедливо указывает, что
addItemListener()
это тоже сработает. Вы можете получить 2ItemEvents
, однако, один для отмены выбора ранее выбранного элемента, а другой для выбора нового элемента. Только не используйте оба типа событий!источник
Пример кода
ItemListener
реализацииТеперь мы получим только выбранный предмет.
Затем просто добавьте слушателя в свой JComboBox
источник
Я бы попробовал
itemStateChanged()
методItemListener
интерфейса, если решение Джодоннелла терпит неудачу.источник
Вот создание ComboBox с добавлением слушателя для изменения выбора элемента:
источник
Вы можете попробовать это
-или-
-или-
источник
Недавно я искал то же самое решение, и мне удалось найти простое, не назначая конкретные переменные для последнего выбранного элемента и нового выбранного элемента. И этот вопрос, хотя и был очень полезным, не дал нужного мне решения. Это решило мою проблему, я надеюсь, что это решит вашу и других. Спасибо.
Как получить предыдущий или последний товар?
источник