2014-03-26 177 views
2

我該表價值創造的JTable是從第五列數據的基礎 (除第五列)檢索通過在第五欄鍵盤 。我輸入值,但是從JTable中再次在獲得價值時那個時候 我不是在第五欄獲得最後輸入的數值請建議 東西 我的方法的代碼波紋管獲得最後一列最後一個單元格的值

public class TableDataDelete implements ActionListener 
    { 
     public void actionPerformed(ActionEvent ee) { 

      int b = table.getRowCount(); 
      System.out.println("row count" + b); 

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

       try 
       { 

       String str = (String) table.getModel().getValueAt(i, 3); 
       String str1 = (String) table.getModel().getValueAt(i, 5); 
       if (!(str1 == null)) { 
        ((DefaultTableModel)table.getModel()).removeRow(i); 
        table.repaint(); 
        System.out.println("remove row no is"+i); 
} 
    } 
       catch(ArrayIndexOutOfBoundsException e) 
       { 
        System.out.println("array index out of bound exception"+e); 
       } 

      } 

} 
    } 

工作代碼時,我進入五個格的值可以從得到的只有前四個單元列着最後獲得進入的小區值

+0

我認爲指數0開始。嘗試'getValueAt(i,4)' –

+0

是肯定索引是0的基礎,但我想獲得第三和第五列值,我可以嘗試,但他們可以訪問第四列,我需要第三列 – fanky

+0

是的,爲什麼你使用3和5 。應該是2和4 –

回答

1

您應使用此代碼停止單元格編輯得到最後的值

if(table.getCellEditor() != null){ 
    table.getCellEditor().stopCellEditing(); 
} 
+0

請告訴我在哪裏使用的代碼 – fanky

+0

我可以使用你有什麼建議我,但由於我只能訪問第一次輸入的單元格值之後,我無法訪問任何值 – fanky

+0

嗨fanky,在第一行使用它之前int b = table.getRowCount(); – Toufic

相關問題