在JComboBox上键入内容时,从数据库中自动过滤JComboBox数据

时间:2019-06-27 06:25:42

标签: java sql jcombobox autofilter

我试图仅过滤从数据库读取的JComboBox的键入文本中包含的有效值。 例如,在DB中,我有“ Makindu”,“ Mombasa”。 如果我输入“ a”,则两个值都应同时出现,但如果我输入“ k”,则仅应显示Makindu。

我尝试在JComboBox事件上键入内容,但未过滤。 routecombo是我的jComboBox的名称。我已经在jCombobox键类型事件上尝试了以下代码,但是它不起作用。

try {     con=DriverManager.getConnection("jdbc:sqlserver://SVR;databaseName=crmdb;user=sa;password=1234");
       stm=con.createStatement();
       result=stm.executeQuery("Select name from RouteMaster where name like '"+routecombo.getEditor().getItem()+"'");
       while(result.next()){
       routecombo.addItem(result.getString("name"));  
       }
       }catch (SQLException ex){
       JOptionPane.showMessageDialog(null,ex);
       }

我希望组合框仅显示过滤的名称,具体取决于用户键入的内容。 查找随附的示例,说明预期的操作。 Expected FilterCombo

0 个答案:

没有答案