2011-01-23 85 views
3

我在JTable中使用RowSorter的,當我排序的列一個並調用該方法getSelectedRowData()其返回錯誤的數據。JTable中,RowSorter的,getSelectedRow數據

public Object getSelectedRowData() 
{ 
    if(getDataArray() != null) 
    { 
     if(grid.getRowSorter() != null) 
      return ((GridModel) grid.getRowSorter().getModel()).getData().get(grid.getSelectedRow()); 
     else 
      return model.getData().get(grid.getSelectedRow()); 
    } 
    else 
     return null; 
} 

我認爲問題是分揀機排序表數據,但ArrayList與數據不重新加載。 我該如何解決它?

+0

沒關係我找到了解決辦法。我只需要使用convertRowIndexToModel方法。 – 2011-01-23 14:02:38

回答

5

爲了得到當前選定的數據可以轉換選擇行號在視圖模型行號。

jTable1.convertRowIndexToModel(jTable1.getSelectedRow())