我在班级有一个JTable和DefaultTableModel。
第一次初始化jTable和Model时,我添加了10行。
在Button上单击,我从数据库中获得3行,因此我必须通过删除较早的10行来仅显示这3行。
我使用tableModel.setDataVector(data, columnNames);
但是主要的问题是,该表仅用新的一行替换了3个旧行,而仍然显示了剩余的7行。
有人可以帮忙吗?
谢谢,
i
最佳答案
据我了解,您想从数据库中重建包含3行的表,并删除前面的10行。如果那是真的,那就这样做
public void actionPerformed(ActionEvent e) {
// If the action is for getting data from DB then do,
DefaultTableModel dtm = (DefaultTableModel) myTable.getModel();
// int rowCount = dtm.getRowCount();
/*
for (int row = rowCount - 1; row >= 0; row--) {
dtm.removeRow(row);
} */
// or
if(dtm.getRowCount() > 0) {
dtm.setRowCount(0);
}
// Add code to get your 3 rows from the database.
}