我有一个 GUI 设置了三个组合框,其中从组合框 1(comboRole)中的选择应该填充组合框 2(comboClass)等等。我已经得到了第二个组合框来填充,但是数组中的所有项目都被视为一个项目,因此只有数组中的顶级项目是可选的。我有一种感觉,这与我实施 . 的方式有关.setModel
,但我不确定我哪里出错了。
public void actionPerformed(ActionEvent a)
{
String selectedRole = (String) comboRole.getSelectedItem();
if ("Tank".equals(selectedRole)){
comboClass.removeAllItems(); //cleans out any data currently in comboClass
comboClass.setModel(new DefaultComboBoxModel(TankClass)); //populating only top level item
//entire array is being treated as a single item.
}
else if ("Healer".equals(selectedRole)){
comboClass.removeAllItems();
comboClass.setModel(new DefaultComboBoxModel(HealerClass));
}
else if ("Caster".equals(selectedRole)){
comboClass.removeAllItems();
comboClass.setModel(new DefaultComboBoxModel(CasterClass));
}
else if ("Damage".equals(selectedRole)){
comboClass.removeAllItems();
comboClass.setModel(new DefaultComboBoxModel(DpsClass));
}
}