我想用 ajava.swing JComboBox
中的值填充 a Enum
。
例如
public enum Mood { HAPPY, SAD, AWESOME; }
并让这三个值填充一个 readonly JComboBox
。
谢谢!
尝试:
new JComboBox(Mood.values());
如果您不想(或不能)使用默认构造函数更改初始化,则可以使用setModel()
方法:
JComboBox<Mood> comboBox = new JComboBox<>();
comboBox.setModel(new DefaultComboBoxModel<>(Mood.values()));
@Pierre 提出的解决方案很好。通常,您使用 DefaultComboBoxModel 或ComboBoxModel或绑定到 ComboBoxModel 以获得更复杂的东西。
默认情况下,JComboBox 不可编辑。
这也可以仅使用默认构造函数而不使用setModel()
方法来实现:
JComboBox<Mood> comboBox_mood = new JComboBox<>();