defaulttablemodel setdatavector用新的

cedebl8k  于 2021-07-09  发布在  Java
关注(0)|答案(1)|浏览(220)

我在类级别有一个jtable和defaulttablemodel。第一次初始化jtable和model时,我添加了10行。按一下按钮,我从我的数据库中得到3行,所以我只有显示这3行删除前10行。我是用 tableModel.setDataVector(data, columnNames); 但主要问题是,该表仅用新的行替换3个旧行,其余7行仍按原样显示。
有人能帮忙吗?
谢谢,贾伊

bmvo0sr5

bmvo0sr51#

如果我理解了,您希望用数据库中的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.
}

相关问题