【发布时间】:2014-12-04 08:36:17
【问题描述】:
我已经搜索了 JTable。此代码过滤两列。一列有两个相似的词,所以过滤器不起作用。这是我的代码:
RowFilter<DefaultTableModel, Object> firstFiler = null;
RowFilter<DefaultTableModel, Object> secondFilter = null;
List<RowFilter<DefaultTableModel,Object>> filters = new ArrayList<RowFilter<DefaultTableModel,Object>>();
RowFilter<DefaultTableModel, Object> compoundRowFilter = null;
try {
secondFilter = RowFilter.regexFilter(this.filter, 12);
firstFiler = RowFilter.regexFilter("AKTIVAN", 8);
filters.add(firstFiler);
filters.add(secondFilter);
compoundRowFilter = RowFilter.andFilter(filters);
} catch (java.util.regex.PatternSyntaxException e) {
return;
}
final TableRowSorter<DefaultTableModel> sorter = new TableRowSorter<DefaultTableModel>((DefaultTableModel) printTable.getModel());
sorter.setRowFilter(compoundRowFilter);
printTable.setRowSorter(sorter);
在第 8 列中,我有“NEAKTIVAN”、“AKTIVAN”等词。如何只搜索“AKTIVAN”?
【问题讨论】: