2012-04-04 3 views
1

クリップボードにコピーできるようにCellSelectionを有効にした巨大なjtableを作成するプログラムがあります。また、完全な表をコピーするアクションもあります。JTableに選択肢をプログラムで保存して適用する方法

それはそうでない:

correspondentTable.selectAll(); 
// then copy 
correspondentTable.clearSelection(); 

それは、「複合体」の選択は、このアクションの後に復元されることであれば後に非常にいいだろう。

これまでのところ私はtable.changeselection(row, col, toggle, extend)を見つけましたが、これを行うための「よりエレガントな」方法があるかどうかは疑問でした。

答えて

1

個々のセルを検索する場合は、テーブルセルを繰り返し処理し、isCellSelectedを使用してチェックできます。実際には、私はそれ以上の "よりエレガントな"解決策を見ません。 getSelectedRows()はあなたにすべてのインデックスを取得し、最小のインデックスを取得するために

使用getSelectedRow()

あなたがチェックする必要がある範囲を限定することが可能でなければなりません。列にも同様の機能があります。

これらの値はどこかに保存し、changeSelectionを使用して選択内容を復元します。

編集:選択値を格納する列モデル(getColumnModel())と選択モデル(getSelectionModel())を取得できます。コピーできる場合は、後で値を再適用することができます。

+0

聞きたくありませんでした。しかし、本当のようです。 – bdecaf

関連する問題