我是使用 JComboBox 的新手,我想从我的 MSAccess 数据库中填充 JComboBox。我有以下代码:
public check_Writer() //Constructor
{
gui();
fillCombo();
}
public void gui()
{
JFrame mainFrame = new JFrame("Frame");
mainFrame.setSize(500,500);
mainFrame.setVisible(true);
JPanel mainPanel = new JPanel();
mainPanel.setBackground(color.BLUE);
mainFrame.add(mainPanel);
JComboBox listofSuppliersCombo = new JComboBox()
mainPanel.add(listofSuppliersCombo);
}
public void fillCombo()
{
String dataSourceName = "CheckWriterDB";
String db = "jdbc:odbc:" + dataSourceName;
try
{
Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);
Connection conn = DriverManager.getConnection(db, "", "");
Statement st1 = conn.createStatement();
st1.execute("select Suppliers from SuppliersTable");
ResultSet rs1 = st1.getResultSet();
if (rs1!null)
{
while(rs1.next())
{
System.out.println(rs1.getString(1));
}
}
}
catch(Exception e)
{
JOptionPane.showMessageDialog(null, e)
}
}
}
先生,我编辑了我的代码,我的代码工作得很好,我可以在控制台中打印我的数据,但我无法填充我的 JComboBox,我尝试了这段代码 listOfSuppliersCombo.addItem(rs1.getString(1)); 但错误消息(java.lang.NullPointerException)。上面创建我的组合框的方式有问题吗,非常感谢先生。