[英]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.