Desidero popolare uno java.swing JComboBox
con valori da un Enum
.Popolamento Swing JComboBox da Enum
ad es.
public enum Mood { HAPPY, SAD, AWESOME; }
ed avere questi tre valori popolano una sola lettura JComboBox
.
Grazie!
Desidero popolare uno java.swing JComboBox
con valori da un Enum
.Popolamento Swing JComboBox da Enum
ad es.
public enum Mood { HAPPY, SAD, AWESOME; }
ed avere questi tre valori popolano una sola lettura JComboBox
.
Grazie!
prova:
new JComboBox(Mood.values());
La soluzione proposta da @Pierre è buono. Di solito si utilizza un DefaultComboBoxModel o uno ComboBoxModel o collegamenti a ComboBoxModel per cose più complesse.
Per impostazione predefinita, JComboBox non è modificabile.
Se non si vuole (o non può) il cambiamento di inizializzazione con il costruttore di default, quindi è possibile utilizzare il metodo setModel()
:
JComboBox<Mood> comboBox = new JComboBox<>();
comboBox.setModel(new DefaultComboBoxModel<>(Mood.values()));
Nota [* Type Inference per Generic creazione istanze *] (http: //docs.oracle.com/javase/7/docs/technotes/guides/language/type-inference-generic-instance-creation.html) e [modello generico] (http://docs.oracle.com/javase/ 7/docs/api/javax/swing/DefaultComboBoxModel.html), nuovo in Java 7. – trashgod