这是我的GUI
我想在点击加载按钮后加载详细信息...所以我输入以下代码:
private void loadActionPerformed(java.awt.event.ActionEvent evt) {
DefaultListModel lb=(DefaultListModel)lb1.getModel();
String sql="Select distinct atomicnumber from properties;";
try
{
Class.forName("java.sql.Driver");
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/elements","root","shanu45");
Statement s=con.createStatement();
ResultSet rs=s.executeQuery(sql);
while(rs.next())
{
int atomicnumber=rs.getInt(1);
lb.addElement(atomicnumber);
lb1.setModel(lb);
}
rs.close();
s.close();
con.close();
}
catch(Exception e)
{
JOptionPane.showMessageDialog(this,e.getMessage());
}
但是当我再次点击它时,重新加载了值 那么是否有任何方法可以将列表计数设置回零以重新加载值?
答案 0 :(得分:2)
lb.removeAllElements()
?
答案 1 :(得分:2)
您没有将之前添加的项目清除到列表中。这就是它重新加载的原因。您需要做的就是在再次运行查询之前删除以前添加的项目。您可以通过在while循环之前添加 lb.removeAllElements()来实现此目的