gpt4 book ai didi

java - JComboBox ExecuteQuery 选择项目错误

转载 作者:行者123 更新时间:2023-12-02 10:18:28 25 4
gpt4 key购买 nike

我有 3 个 jComboBox。第一个是房间类型。当我在第一个 jComboBox 上选择房间类型时,它必须在第二个 jComboBox 中显示所有可用房间,但是当我选择其中一个房间类型时,会弹出错误。

https://imgur.com/a/wpmhLfD

这是在第一个 jComboBox 上执行的操作代码

执行的第一个 jComboBox 操作*

    if(jComboBox13.getSelectedItem().toString().equals("SELECT")){

}else{
try{
String like = jComboBox13.getSelectedItem().toString();
String sql = "Select * From Room_Master\n" +
"inner join Room_Type on Room_Master.Room_Type_ID=Room_Type.Room_Type_ID\n" +
"where Room_Type = '"+like+"'";
pst = conn.prepareStatement(sql);
rs = pst.executeQuery();
jComboBox14.removeAllItems();
jComboBox14.addItem("SELECT");
while(rs.next()){
String add1 = rs.getString("Room_No.");
jComboBox14.addItem(add1);
}
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}finally {
try {
rs.close();
pst.close();
}catch(Exception e){

}
}
}

执行第二个 jComboBox 操作

if(jComboBox14.getSelectedItem().toString().equals("SELECT") | jComboBox14.getSelectedItem().toString().isEmpty()){

}else{
try{

String like = jComboBox14.getSelectedItem().toString();
String sql = "Select * from Bed_Master\n" +
"inner join Room_Master on Bed_Master.Room_ID=Room_Master.Room_ID\n" +
"where [Room_No.] = '"+like+"'";
pst = conn.prepareStatement(sql);
rs = pst.executeQuery();
jComboBox15.removeAllItems();
jComboBox15.addItem("SELECT");
while(rs.next()){
String add1 = rs.getString("Bed_No.");
jComboBox15.addItem(add1);
}
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
e.printStackTrace();
}finally {
try {
rs.close();
pst.close();
}catch(Exception e){

}
}
}

但是当我选择另一个房间类型后它就会起作用我试图删除“combobox.removeAllItems();”但它会继续添加 jCombobox 中的所有项目近 1 周试图弄清楚,有人可以帮忙吗

最佳答案

当您调用removeAllItems时,它会触发jComoboBox14的actionListener在此阶段,它不会有任何项目,因此 getSelected 将返回 NULL

将您的if更改为

if(jComboBox14.getItemCount() > 0 && (jComboBox14.getSelectedItem().toString().equals("SELECT") |
jComboBox14.getSelectedItem().toString().isEmpty())){

关于java - JComboBox ExecuteQuery 选择项目错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54511352/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com