0

我确信有办法做到这一点,但似乎不太明白。

我正在开发一个程序,该程序具有一个填充了枚举的组合框。我需要获取选定的值并将其传递给当前将字符串作为参数的 setter 方法。

我认为它会像这样工作;用户选择枚举值,程序找出枚举列表中该枚举的值,然后如果可能,只需调用一个 toString 并将其传递给设置器。

我可能很远,但任何帮助表示赞赏!

我试过String system = (String) play.getSelectedItem(); gGame.setPlayer(system);String system = play.getSelectedItem().toString():

4

1 回答 1

1

一个如何enum使用的示例JComboBox

//Definition of the enum
enum ItemType {
  First("First choice"), Second("Second choice"), Third("Final choice");
  private final String display;
  private ItemType(String s) {
    display = s;
  }
  @Override
  public String toString() {
    return display;
  }
}


//Assigning values of enum to 'play' JComboBox
play.setModel(new DefaultComboBoxModel(ItemType.values()));

//Reading the value of JComboBox
ItemType selectedType = (ItemType)play.getSelectedItem();
gGame.setPlayer(selectedType); //toString is overridden, so it will assign the appropriate text value of the enum
于 2013-07-19T02:51:40.767 回答