質問: 大学でプログラミングの授業がありまして、せっかくなのでアプリケーション開発しています。 JTableの0列目にデスクトップにあるファイル名を表示して 1列目~5列目はキーワード編集できるようにしています。 1列目~5列目のキーワードをテキストフィールドに入力してボタンを押せば、 キーワードがついてる行を上から順に表示するようにしたいのですが、うまくいきません。 カラム(列)の値を取得して、ArraryListクラスや Comparatorクラス を使ってソートをするとか、 データベースというのを使えばいいのか、右も左もわからない状態で1週間経ちました。 説明不足の点もあるかと思いますが、何かお気づきの点がありましたらご指摘ください。m(._.)m
回答: ソート、と書かれていますが、本当にやりたいことは、絞り込み検索(フィルタリング)でしょうか? ネットで検索しただけで、自分では試してないのですが、こちらの連載記事で JTable のいろいろな使い方が紹介されています。(ちょっと古いのですが...) * Java SE 6完全攻略 第23回 JTableクラスでのソーティング * Java SE 6完全攻略 第24回 JTableクラスでのフィルタリング 第24回の、動的なフィルタリングのようなことをしたいのかなと考えました。それには、`TableRowSorter` クラスの `#setRowFilter()` メソッドを使って、`RowFilter` オブジェクトを設定すればいいようです。 やりたいことと違ってたらごめんなさい。