Java 在筛选器行中添加多选ComboxCellEditor

Java 在筛选器行中添加多选ComboxCellEditor,java,nattable,Java,Nattable,我希望在特定列的筛选器行中有一个复选框 为此,我添加了一个带有指定复选框值的ComboCellEditor final ComboBoxCellEditor comboBoxCellEditor = new ComboBoxCellEditor(checkBoxValues); comboBoxCellEditor.setMultiselect(true); comboBoxCellEditor.setUseCheckbox(true); comboBoxCellEditor.setMultis

我希望在特定列的筛选器行中有一个复选框

为此,我添加了一个带有指定复选框值的
ComboCellEditor

final ComboBoxCellEditor comboBoxCellEditor = new ComboBoxCellEditor(checkBoxValues);
comboBoxCellEditor.setMultiselect(true);
comboBoxCellEditor.setUseCheckbox(true);
comboBoxCellEditor.setMultiselectTextBracket("", "");
configRegistry.registerConfigAttribute(EditConfigAttributes.CELL_EDITOR, comboBoxCellEditor,
        DisplayMode.EDIT, region);
这使我可以选择要过滤的值。选择它们后,它将它们存储在单元格中,作为
[第一个值、第二个值、第三个值]
。这意味着不会返回任何行,因为列中没有与完整字符串匹配的内容

考虑到这一点,我假设我必须将文本更改为某种形式的正则表达式,并将
TextMatchingMode
设置为
regular\u expression
。我一直在尝试实现一个
DisplayConverter
,但我不知道该如何实现

我已经看了一些例子来尝试解决这个问题,但是我找不到一个能涵盖我的情况的例子。这里有一个
StaticFilterGridExample
,它是一个普通的组合框,可以选择一个值(我已经正常工作了),或者
ExcelLikeFilterRowExample
可以为每一列添加一个复选框过滤器。我只想对单个列执行此操作,因此我不能使用该层


实现这一点的最佳方法是什么?

IIUC您希望将类似Excel的过滤器与带有复选框和/或文本字段的简单过滤器混合使用。对吗


NatTable目前不支持这种开箱即用的方式。您需要创建自己的两种默认实现的混合体,以使其工作。

是的,这是正确的。我们需要可编辑文本、组合框和复选框过滤器。默认实现是指处理此问题的新层还是注册表配置中的实现,查看该示例,您可能需要一个类似于
ComboxFilterRowheaderComposite
的新层和一个类似于
ComboxGlazedListsFilterStrategy
的新过滤策略。我通过将注册表配置设置为使用组合框单元格编辑器并创建自定义的
ComboBoxGlazedListsFilterStrategy
实现了这一点。我现在可以在一个表中同时使用多种过滤器类型。谢谢你的帮助!完美的如果您愿意,我们接受捐款;-)