1

ここで通常のテーブルを使用して複数のフィルターを使用する方法を調べたところ、すべての回答がでしたGlazedLists。しかし、答えはそれを使用する方法を指定していませんでした。1つのフィルターを機能させることができましたが、複数のフィルターを取得する方法がわかりません。私が使用した1つのフィルター:

  // nameE is a BasicEventList containing classes (name) which 
  // contain the table values
  TextFilterList filtered = new TextFilterList(nameE);
  JTextField filterEdit = filtered.getFilterEdit();

  // Inside the table value class (name) there is a filter for myName
  public void getFilterStrings(List baseList) {
      baseList.add(myName);
  }

コードを複製して別のコードを作成JTextFieldしても機能しません。この問題を調べたところ、うまくいくCompositeMatcherEditor可能性があります。問題は、これを実装する方法がわからないことです。

また、私はEclipseを使用しています。GlazedLists1.8.0をダウンロードしてEclipseにドロップしました。ただ、使えません。全体に赤い四角があります(ソースフォルダーを除く)。jarファイルも追加しました。

私は自分自身を正しく説明したと思います。拡張する必要がある場合はお知らせください。

私のペーストビン:名前ブラウザTableFormatTableModel

4

1 に答える 1

5

TextFilterListは非推奨になりました-javadocsを参照してください-しかし、それは副次的な問題です。

ここで使用できるアプローチはいくつかあります。本当に単純にしたい場合は、フィルターリストを別のフィルターリストでラップします。

EventList filtered = new FilterList(new FilterList(nameE, myFirstMatcherEditor), mySecondMatcherEditor);

より良い方法は、複数のマッチャーエディターを使用してCompositeMatcherEditorを作成することです。

EventList filtered = new FilterList(nameE, new CompositeMatcherEditor(myFirstMatcherEditor, mySecondMatcherEditor));

setModeを使用して、エディターがANDまたはORの動作を使用して結合されるかどうかを制御できます。

フィルタリストの使用に関する必読情報は次のとおりです。

ここで利用できるスクリーンキャストも、数分の投資の価値があります。

于 2009-10-28T02:42:14.650 に答える