テーブルの印刷機能
print() というメソッドが増えています。
JScrollPaneに入っているJTableで全体が表示されていないとき(スクロールしないと全体が見えないとき)印刷って今までそぅ簡単にはできなかったんですが、これを使うと全体を印刷できるようになるみたい。
テーブルのソート機能
テーブルの列Headerをクリックするとテーブル内データをソートさせる・・・というのは、今まで自作を良くしていた部分ですが、これがJTableに標準実装されています。
JTableの標準実装をそのまま使いたいときには setAutoCreateRowSorter(true)ってしてあげるだけでOK!
Sorterを自分で実装して設定することもできます。
このソートを実装ですが、Modelのデータを実際にソートするのではなく、"見かけだけ" ソートしているようです。
そのため・・・
TableModelのsetValueAt((Object aValue, int row, int column)
を使うときには注意する必要があります。
今までも 『列』(Column) は "見かけだけ" 移動させることができたため、
"見かけ上での列位置" から "Model上の列位置" に変換するのに convertColumnIndexToModel(column) ってのを使っていたと思います。
これが、『行』に対しても必要になってきます。
convertRowIndexToModel(int)というメソッドが追加されていて、これを使ってModelの行位置に変換する必要があります。
今までのアプリ・・・修正しないといけないところが多いなぁ(涙)