Заполнение Swing JComboBox от Enum - PullRequest
       49

Заполнение Swing JComboBox от Enum

33 голосов
/ 22 сентября 2009

Я хотел бы заполнить java.swing JComboBox значениями от Enum.

например.

public enum Mood { HAPPY, SAD, AWESOME; }

и эти три значения заполняются только для чтения JComboBox.

Спасибо!

Ответы [ 3 ]

43 голосов
/ 22 сентября 2009

попробовать:

new JComboBox(Mood.values());
18 голосов
/ 18 февраля 2012

Если вы не хотите (или не можете) изменить инициализацию с помощью конструктора по умолчанию, тогда вы можете использовать setModel() метод:

JComboBox<Mood> comboBox = new JComboBox<>();
comboBox.setModel(new DefaultComboBoxModel<>(Mood.values()));
1 голос
/ 22 сентября 2009

Решение, предложенное @Pierre, хорошее. Обычно вы используете DefaultComboBoxModel или ComboBoxModel или привязки к ComboBoxModel для более сложных вещей.

По умолчанию JComboBox недоступен для редактирования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...