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