-4

我希望组合框在运行时存储数据库中的名称,所以我创建了一个列表,但组合框显示错误...

        List<String> s = new ArrayList<String>();
        {
            try
            {
                Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
                Connection con =DriverManager.getConnection("jdbc:odbc:project","sa","123456");
                Statement stmt= con.createStatement();
                ResultSet rs=stmt.executeQuery("SELECT Name FROM company");
                i=0;
                while(rs.next()) {
                    s.add(rs.getString("Name"));
                }
            }
            catch(Exception ex) {             {
                JOptionPane.showConfirmDialog(f,ex);
            }
            cb=new JComboBox(s);
        }
4

1 回答 1

5

可能的问题是您正在传递List<String>JComboBox. 一种正确的方法是将 转换List<String> sString[]数组并将其传递给构造函数: JComboBox(E[] items)

 new JComboBox(s.toArray(new String[s.size()]));

另请阅读如何使用组合框

于 2013-07-27T08:04:00.647 回答