2012-12-13 69 views
0

因此,我有一個默認表模型,該模型由我創建的對象填充。其中一個對象是Name,另外還有另外三個對象的字符串屬性。我有一個執行動作的按鈕,現在,當此按鈕執行此操作時,我需要循環訪問該DefaultTableModel中的所有項目,並刪除列0中與所選對象具有相同值的所有項目。所以我的問題是這隻會刪除一個具有該值的項目(名稱)。我需要這個代碼刪除所有包含相同的字符串值列中的項目的0刪除Java JTable中的多個項目

   int nRow = suggestedAcTableModel.getRowCount() - 1; 

       for (int i = 0; i < nRow; i++) { 

        String acNameStr = suggestedAcTableModel.getValueAt(i, 0).toString(); 

        if (acNameStr.equals(acName)) { 

         suggestedAcTableModel.removeRow(i); 
        } 
       } 

回答

3

如果您想尋找每一列的值,然後刪除整個行,如果找到該值則見下文。

for (int i = 0; i < suggestedAcTableModel.getRowCount(); i++) { 
    for(int j = 0; j < suggestedAcTableModel.getColumnCount(); j++){ 
     String acNameStr = suggestedAcTableModel.getValueAt(i, j).toString(); 
     if (acNameStr.equals(acName)) { 
      suggestedAcTableModel.removeRow(i); 
      j = suggestedAcTableModel.getColumnCount(); 
      i--; 
     } 
    } 
} 
+0

嘿它工作,謝謝MM我很感激。 – yams