Подтвердить что ты не робот

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

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

например.

public enum Mood { HAPPY, SAD, AWESOME; }

и эти три значения заполняют readonly JComboBox.

Спасибо!

4b9b3361

Ответ 1

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

new JComboBox(Mood.values());

Ответ 2

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

JComboBox<Mood> comboBox = new JComboBox<>();
comboBox.setModel(new DefaultComboBoxModel<>(Mood.values()));

Ответ 3

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

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