Je voudrais peupler un Java.swing JComboBox
avec des valeurs d'un Enum
.
par exemple.
public enum Mood { HAPPY, SAD, AWESOME; }
et ces trois valeurs remplissent une population de manière réadonnée JComboBox
.
Merci!
essayer:
new JComboBox(Mood.values());
Si vous ne voulez pas (ou ne peut pas) l'initialisation du changement avec le constructeur par défaut, vous pouvez utiliser setModel()
méthode:
JComboBox<Mood> comboBox = new JComboBox<>();
comboBox.setModel(new DefaultComboBoxModel<>(Mood.values()));
La solution proposée par @pierre est bonne. Habituellement, vous utilisez une valeur par défautComboboxmodel ou A ComboBoxmodel ou des liaisons sur le ComboBoxModel pour des trucs plus complexes.
Par défaut, un JCOMBOBOX n'est pas modifiable.