我已經從數據庫填充了組合框B1。當itemStateChanged事件引發它應該填充另一個組合框B2,但它不工作。Java Swing dynamic JComboBox
ArrayList1 = //call method in database connection class()
for (int j = 0; j < ArrayList1.size(); j++)
{
if (j == 0)
{
combobox1.addItem("Select Any");
}
combobox1.addItem(ArrayList1.get(j));
}
combobox1.addItemListener(new ItemListener()
{
@Override
public void itemStateChanged(ItemEvent ie)
{
String catName = (String)combobox1.getSelectedItem();
if (!catName.equalsIgnoreCase("Select Any"))
{
ArrayList2=//call method in DB class with cat_name as argument
for(int i=0;i < ArrayList2.size();i++)
{
if (i == 0)
{
combobox2.addItem("Select Any");
}
combobox2.addItem(ArrayList2.get(i));
}
}
}
});
第一個組合框從數據庫中獲取填充,但從其中選擇任何項後,第二個組合框保持空白。
爲什麼調試這個我的電腦掛了?
問題:在調用數據庫之後,您是否檢查過Array_list2是否爲空?在這裏添加跟蹤將確保問題不在您的示例中未顯示的代碼中(DB方法)。 – jfpoilpret
但是當我要去調試它然後它會掛電腦??然後我怎麼能調試它? – Geetanjali
請學習java命名約定並堅持到他們 – kleopatra