[英]Set Multiple RowFilters On JXTable
如何在JXTable中為1行添加多個過濾器?
我嘗試使用:
int col = jxTable.getColumn("Tipo").getModelIndex();
RowFilter filter1 = RowFilters.regexFilter(0, "^N", col)
RowFilter filter2 = RowFilters.regexFilter(0, "^N", col)
jxTable.setRowFilter(filter1);
jxTable.setRowFilter(filter2);
但是filter2
覆蓋了filter1
用法:
我會做3個復選框,用不同的字母進行過濾,
[ ]A [ ]B [ ]C
如果選中A,則僅顯示以A開頭的內容,如果選中B和A,則同時顯示...
當您要組合多個過濾器時,請使用RowFilter.andFilter()
或RowFilter.orFilter()
方法。 對於您的情況,聽起來像您想使用orFilter
方法
腳步:
RowFilter.andFilter()
或RowFilter.orFilter()
來創建一個過濾器,該過濾器對列表中的過濾器進行AND
或OR
。 AND
或OR
過濾器應用到JXTable。 例:
//Code not tested
int col = jxTable.getColumn("Tipo").getModelIndex();
RowFilter filter1 = RowFilters.regexFilter(0, "^N", col)
RowFilter filter2 = RowFilters.regexFilter(0, "^N", col)
List<RowFilter> filters = new ArrayList<RowFilter>();
filters.add(filter1);
filters.add(filter2)
RowFilter orFilter = RowFilter.orFilter(filters);
jxTable.setRowFilter(orFilter);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.