sqlite如何在Java中向ComboBox添加多个元素
我有一个名为“kierowca”的表,其中有一列名为“imie”和“nazwisko”。在我的应用程序中,我想在comboBox中添加一些项目,如“imie nazwisko”。这就是我的组合框的定义:
public DefaultComboBoxModel kierowcaCbModel = new DefaultComboBoxModel();
JComboBox kierowcaCb = new JComboBox(kierowcaCbModel);
以下是我从数据库中获取“imie”和“nazwisko”的方法:
public static String getKierowcaImieNazwisko(int id) {
String imieNazwisko = "";
try {
ResultSet result = stmt.executeQuery("SELECT imie, nazwisko FROM kierowca WHERE id_kierowca="+id+";");
while(result.next()) {
imieNazwisko = result.getString("imie") + " " + result.getString("nazwisko");
}
} catch (SQLException e) {
e.printStackTrace();
}
return imieNazwisko;
}
下面是我如何尝试在comboBox中添加更多元素的方法:
try {
ResultSet result = baza.stmt.executeQuery("SELECT id_kierowca FROM kierowca;");
while(result.next()) {
view.kierowcaCbModel.addElement(baza.getKierowcaImieNazwisko(result.getInt("id_kierowca")));
}
} catch(Exception ex) {
ex.printStackTrace();
}
问题是,我的最后一个组合框只有表“kierowca”的第一行。如何解决这个问题
编辑:
此外,我还可以像view.kierowcaCb.addElement("Hallo");
一样将新项手动添加到comoBox中,并且它在我的最终comboBox中可见
# 1 楼答案
由于在Jframe中初始化模型后要修改模型,因此需要重新绘制swing
试试看
如果仍然不起作用,那么在完成上述步骤后,请尝试
如果重新喷漆不起作用,则根据文件:
ComboBoxModel
添加到JComboBox
你可以在那里
add / remove / modify
输入值,在刷新视图的API中实现的事件(
JComboBox
) 没有代码行所有更新必须在
Event Dispatch Thread