2009-09-22 20 views

Odpowiedz

37

try:

new JComboBox(Mood.values()); 
1

Proponowana przez @Pierre rozwiązanie jest dobre. Zwykle używasz DefaultComboBoxModel lub ComboBoxModel lub wiązań do ComboBoxModel dla bardziej skomplikowanych rzeczy.

Domyślnie JComboBox nie jest edytowalny.

16

Jeśli nie chcą (lub nie mogą) z inicjalizacji zmiana domyślnego konstruktora, a następnie można użyć setModel() metody:

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

Note [* Rodzaj Wnioskowanie dla Generic tworzenia instancji *] (http: //docs.oracle.com/javase/7/docs/technotes/guides/language/type-inference-generic-instance-creation.html) i [model ogólny] (http://docs.oracle.com/javase/ 7/docs/api/javax/swing/DefaultComboBoxModel.html), nowy w Javie 7. – trashgod