2009-08-22 12 views
1

フィルタリングされていないテーブルに対応する選択のインデックスを取得する方法はありますか?JTable RowFilter

テーブルがregexFilterを使用してフィルタされた後。 JTable getSelectedRowはフィルタ処理されたテーブルのインデックスを返します。

答えて

6

1.6から組み込みのTableRowSorter機能を使用している場合は、テーブルのconvertRowIndexToModel()を使用できます。これは、選択された行のフィルタリングされていないインデックスを提供します。根底 のTableModelとのJTableの 方法をベース行を使用する場合

座標変換が必要 あろう:

JTableのためのJavadocは、この説明を与えます。 JTablesのすべてのローベースの メソッドは、RowSorterの意味であり、 で、 のTableModelのメソッドと必ずしも同じである必要はありません。 の場合、選択は常に というJTableの用語になります。 RowSorterを使用する場合は、convertRowIndexToViewまたは convertRowIndexToModelを使用して を変換する必要があります。

0

jtableから選択した行を取得したときに行IDをクエリすると、データモデルに行IDが格納されます。