我正在尝试从数据库中检索数据并自动设置jTextFields。
我设法检索名称的表格列并将其设置为combobox
。
但现在我希望与所选项目相关的所有内容在jTextfields中自动显示。
我尝试了以下代码,但在setString
无法识别时出错:
private void jComboBox1PopupMenuWillBecomeInvisible(javax.swing.event.PopupMenuEvent evt) {
String tmp = (String)jComboBox1.getSelectedItem();
String SQL = "select * from ROOT.\"Books\" WHERE Name=?";
try{
String host = "jdbc:derby://localhost:1527/books";
String userName = "root";
String Pass = "1234";
Connection con = DriverManager.getConnection(host, userName, Pass);
Statement stmnt = (Statement) con.createStatement();
stmnt.setString(1, tmp);
ResultSet rs = stmnt.executeQuery(SQL);
if (rs.next())
{
String add1 = rs.getString("Year");
jTextField1.setText(add1);
String add2 = rs.getString("Price");
jTextField2.setText(add2);
}
} catch (Exception e) {
e.printStackTrace();
}
}
答案 0 :(得分:1)
我唯一可以说的是,不要使用PoupMenuListener。
当用户从组合框中进行选择时,您应该使用ActionLIstener
或ItemListener
来处理事件。
阅读How to Use Combo Boxes上Swing教程中的部分,了解更多信息和工作示例。