簡體   English   中英

如何初始化動態添加項的JComboBox?

[英]How To Initialize a JComboBox Whose Items are added Dynamically?

我已經創建了一個JComboBox ,它的項目通過LinkedList動態添加,如何初始化其選定的值。

假設"list"包含A->B->C->D->null

我想用B初始化ComboBox選定的索引(即列表中的第二項)。

我試圖做到如下

ComboBox.setSelectedIndex(1);

但我收到Exception setSelectedIndex: 1 out of bound

JComboBox ComboBox= new JComboBoX();
LinkedList List = new LinkedList();

getListDataFromDataBase();
//After this List Contains A->B->C->D->null

for(int i=1;i<=List.getSize();i++)
{
    Object Item = List.getValueAt(i);
    ComboBox.addItem(Item);
}

ComboBox.setSelectedIndex(1);

確保使用addItem()將元素添加到comboBox

這是一個小片段:

import javax.swing.JComboBox;
import javax.swing.JFrame;

public class Demo {

  public static void main(String[] a) {
    JFrame frame = new JFrame();
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    JComboBox jComboBox1 = new JComboBox();
    jComboBox1.addItem("Item 0");
    jComboBox1.addItem("Item 1");
    jComboBox1.addItem("Item 2");
    jComboBox1.addItem("Item 3");
    jComboBox1.addItem("Item 4");
    jComboBox1.addItem("Item 5");

    Object cmboitem = jComboBox1.getSelectedItem();
    System.out.println(cmboitem);

    frame.add(jComboBox1);

    jComboBox1.setSelectedIndex(4);
    frame.setSize(300, 200);
    frame.setVisible(true);
  }
}

編輯

linkedList添加

for(int i = 0; i < linkedList.size(); i++)
   comboBox.addItem(linkedList.get(i).toString());

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM