Frage

Ich versuche, eine JTable mit einem TableRowFilter zu filtern. Es funktioniert für mich auf ein einfaches Beispiel, aber ich kann nicht scheinen, um es an die Arbeit auf die reale Sache zu bekommen. Die Filter werden aufgerufen, werden die Protokolle gedruckt - aber ich staill die Zeilen sehen. Irgendwelche Ideen?

public class TopicTable extends JTable {

...

public TopicTable(ITopic topic) {

    super();
    TopicTableDataModel model = new TopicTableDataModel(topic);
    setModel(model);
    setRowSorter(generateTableRowSorter(model));        
    setFillsViewportHeight(true);
    setColumnRenderers();       
}

private TableRowSorter<TableModel> generateTableRowSorter(TableModel model) {

    RowFilter<Object, Object> classFilter = new RowFilter<Object, Object>() {

        @Override
        public boolean include(javax.swing.RowFilter.Entry<? extends Object, ? extends Object> entry) {
            log.debug("Filtering? " + entry.getValue(1));
            return false;
        }

    };

    TableRowSorter<TableModel> sorter = new TableRowSorter<TableModel>(model);
    sorter.setRowFilter(classFilter);
    return sorter;
}

...
}
War es hilfreich?

Lösung

Da alle dummen Fehler gehen - das war einer von ihnen. In einer anderen Klasse, die diese Tabelle verwendet, benutzen ich table.setAutoCreateRowSorter (true) - so dachte auch der ursprüngliche Sortierer noch lief, ist der Standard man auch tat, und dann nichts passierte.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top