私はJTableを実装しました。そこでは、textFieldでエントリを検索できます。ソーターが行の順序を変更した後にJTableModelを更新するには?
要求が行われると、コードでDefaultTableModel
が取得され、各列と行の要素が検索され、その要素が見つかった行が選択されます。
これはうまくいきますが、並べ替えがDefaultTableModel
を更新していないため、どの列をクリックしてもテーブルを並べ替えることはできません。
表には、私は小さな例を投稿することはできませんので極めて複雑と依存関係に満ちている大きなプロジェクトの一部ですが、私は、これはそれを合計すると思う:非のフルDefaultTableModel A
を考えると
JTable B
についてソートしたデータ。B.setAutoCreateRowSorter()
はtrue
です。B
はいくつかのクロームソート後にどのように更新されますか?A
?
私はドキュメントを読んでも、このに見てきた:
http://www.codejava.net/java-se/swing/6-techniques-for-sorting-jtable-you-should-know
と同様にTableRowSorter#addRowSorterListener
にビットを掘ったが、それは唯一の列がソートされたことを私に伝えることができ、本当に有用ではありません。もちろん、私はその列が多次元配列のすべての値をソートし、並べ替えてからテーブルをクリアしてからすべてを戻すのではない限り、私の場合は非常に遅く、実際にはオプションではありません。
RowSorterEvent
が提供する情報については、この参照してください:
https://docs.oracle.com/javase/7/docs/api/javax/swing/event/RowSorterEvent.html
誰かが正しい方向に私を指すことができますか?要求が行われた場合
正確に私が探していたものは、すべての問題を修正しました。 –