从List填充JComboBox

时间:2015-05-27 06:12:39

标签: java arrays swing jcombobox

我正在尝试从列表中填充JComboBox,但我将组合清空。

代码有什么问题?

 List<Rank> rank = GetRanks();
 Vector model = new Vector();

 for (Rank s : rank) {
     model.addElement(new Rank(s.getRankId(), s.getRankName()));
 }
 jComboBox1 = new JComboBox(model);

2 个答案:

答案 0 :(得分:2)

之类的错误
cancel

DefaultComboBoxModel<Rank> model = new DefaultComboBoxModel<>();
for (Rank r : rank) {
    model.addElement(r);
}
jComboBox1 = new JComboBox(model);

不要忘记确保将DefaultComboBoxModel<Rank> model = new DefaultComboBoxModel<>(rank.toArray(new Rank[rank.size()]); jComboBox1 = new JComboBox(model); 添加到可显示的内容

答案 1 :(得分:0)

快速浏览代码没有任何问题:

  1. 列表为空
  2. 您的Rank对象有问题
  3. 您没有在页面上添加新的组合框
  4. 我认为3可能是最有可能的,因为你正在创建一个新的,然后没有做任何事情。您可能想要更改旧项目中的项目,而不是创建新项目。

    尝试在调试器中运行程序,并逐步查看代码,了解每一步的操作。