Swing/DefaultSortingColumn のバックアップの現在との差分(No.1)
- バックアップ一覧
- 差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- バックアップ を表示
- Swing/DefaultSortingColumn へ行く。
- 追加された行はこの色です。
- 削除された行はこの色です。
TITLE:JTableがデフォルトでソートする列を設定する #navi(../) RIGHT:Posted by [[aterai]] at 2011-06-06 *JTableがデフォルトでソートする列を設定する [#t18d1eb2] JTableがデフォルトでソートする列とその方向を設定します。 --- category: swing folder: DefaultSortingColumn title: JTableがデフォルトでソートする列を設定する tags: [JTable, RowSorter] author: aterai pubdate: 2011-06-06T18:40:01+09:00 description: JTableがデフォルトでソートする列とその方向を設定します。 image: https://lh5.googleusercontent.com/-qvzRq_TxwSg/Texuvm22ELI/AAAAAAAAA84/DhfjZ3TEATk/s800/DefaultSortingColumn.png --- * 概要 [#summary] `JTable`がデフォルトでソートする列とその方向を設定します。 -&jnlp; -&jar; -&zip; #download(https://lh5.googleusercontent.com/-qvzRq_TxwSg/Texuvm22ELI/AAAAAAAAA84/DhfjZ3TEATk/s800/DefaultSortingColumn.png) //#screenshot #ref(https://lh5.googleusercontent.com/-qvzRq_TxwSg/Texuvm22ELI/AAAAAAAAA84/DhfjZ3TEATk/s800/DefaultSortingColumn.png) **サンプルコード [#a2768444] #code{{ * サンプルコード [#sourcecode] #code(link){{ JTable table = new JTable(model); table.setAutoCreateRowSorter(true); int index = 0; //table.getRowSorter().toggleSortOrder(index); //SortOrder.ASCENDING table.getRowSorter().setSortKeys( Arrays.asList(new RowSorter.SortKey(index, SortOrder.DESCENDING))); // table.getRowSorter().toggleSortOrder(index); // SortOrder.ASCENDING RowSorter.SortKey key = new RowSorter.SortKey(index, SortOrder.DESCENDING); table.getRowSorter().setSortKeys(Collections.singletonList(key)); }} **解説 [#h11e48c2] 上記のサンプルでは、RowSorter#setSortKeys(...)を使って、指定の列のソート順序(ここでは、0列目をSortOrder.DESCENDINGで降順)のリストを設定しています。 ---- - RowSorter#setSortKeys(null)で、ソート無し状態になる -- [TableRowSorterのSortKeysをクリアする>Swing/ClearSortingState] ---- table.getRowSorter().toggleSortOrder(index)を一回で昇順、二回で降順に設定する方法もあります。 * 解説 [#explanation] 上記のサンプルでは、マウスでヘッダをクリックすることなく、起動後の初期状態で`JTable`のソートを実行する列を指定しています。 **参考リンク [#p9343c5c] - [TableRowSorterのSortKeysをクリアする>Swing/ClearSortingState] - `RowSorter#setSortKeys(...)`を使用するので列のソート順序が指定可能 -- 例: `0`列目を`SortOrder.DESCENDING`(降順)でソートなど - `table.getRowSorter().toggleSortOrder(index)`を`1`回で昇順、`2`回で降順に設定する方法もある - `RowSorter#setSortKeys(null)`でソート無し状態になる -- [[TableRowSorterのSortKeysをクリアする>Swing/ClearSortingState]] **コメント [#c094ddb6] * 参考リンク [#reference] - [https://docs.oracle.com/javase/jp/8/docs/api/javax/swing/RowSorter.html#setSortKeys-java.util.List- RowSorter#setSortKeys(...) (Java Platform SE 8)] - [[TableRowSorterのSortKeysをクリアする>Swing/ClearSortingState]] * コメント [#comment] #comment #comment