【问题标题】:Loading an ArrayList into a JCombobox using netbeans使用 netbeans 将 ArrayList 加载到 JCombobox
【发布时间】:2013-02-26 08:31:47
【问题描述】:

当前有一个名为 SundayList 的 ArrayList,它会在框架 AddStudent 加载后立即加载(GUI 的一部分)

Netbeans自动生成的代码是:

comboboxSunday = new javax.swing.JComboBox();

comboboxSunday.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item1", "Item2" }));

如何使用我自己的数组加载组合框项? 该数组包括以下项目:

Activity1
Activity2
Activity3
Activity4

在我之前的搜索中,人们提到了使用 toString()toArray(),我不熟悉这两种方法,也不熟悉它们如何帮助将列表加载到组合框中,因为我对 java 还很陌生..

【问题讨论】:

  • 查看我的answer。它将向您展示如何将自定义对象添加到 ComboBox。您可以遍历 ArrayList 并将所有对象添加到其中,而不是在那里逐个创建对象。
  • 这似乎是这个问题的答案,但对我来说,我对 mySQL 并不熟悉,我正在努力避免对我来说是外国的东西

标签: java swing netbeans arraylist jcombobox


【解决方案1】:

您可以创建自己的 ComboBoxModel,以 List 作为主要参数,但这有点复杂

comboboxSunday.setModel(new DefaultComboBoxModel());
for (Object item : listOfItems) {
    comboboxSunday.addItem(item);
}

【讨论】:

  • 我正在尝试使用这个方法,但是当我调用我的arraylist“SundayList”时,我得到了找不到符号错误,无法调用这个方法的列表。我该怎么办?
  • 发布附加代码。您使用的是字符串数组还是 ArrayList?
  • 使用 ArrayList:初始化如下:List sundayList = new ArrayList();
  • 你在 for 循环中用 sundayList 替换了 listOfItems 吗?
  • 是的,我进入了 Netbeans 中的自定义代码,并在代码正下方添加了 for 循环,如上所示,除了它是“javax.swing.DefaultComboBoxModel()”,因为 Netbeans 需要这种方式
【解决方案2】:

假设你的数组看起来像这样:

String[] SundayList = { "Activity1", "Activity2", "Activity3", "Activity4" };

你可以这样做:

javax.swing.JComboBox sundayCombo = new javax.swing.JComboBox(SundayList);

如果您的数组不是字符串数组。试试:

javax.swing.JComboBox sundayCombo = new javax.swing.JComboBox(SundayList.toString());

希望这会有所帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-23
    • 2014-10-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多