Я хотел бы заполнить java.swing JComboBox значениями из Enum.
например.
public enum Mood { HAPPY, SAD, AWESOME; }
и эти три значения заполняют readonly JComboBox.
Спасибо!
Ответ 1
попробовать:
new JComboBox(Mood.values());
Ответ 2
Если вы не хотите (или не можете) изменить инициализацию с помощью конструктора по умолчанию, вы можете использовать метод setModel():
JComboBox<Mood> comboBox = new JComboBox<>();
comboBox.setModel(new DefaultComboBoxModel<>(Mood.values()));
Ответ 3
Решение, предложенное @Pierre, хорошо. Обычно вы используете DefaultComboBoxModel или ComboBoxModel или привязки к ComboBoxModel для более сложных вещей.
По умолчанию JComboBox недоступен для редактирования.