2013-05-04 58 views
3

我在Vaadin 7中做了一个项目。在那里,我需要为Treet功能实现过滤器。Vaadin - Tree table的多个过滤器

我在为一个值应用过滤器时很安静。我的意思是,我有4个Comboboxex'c1','c2','c3','c4'和一个Treetable'TT'。我使用HierarchicalContainer'HC'将值加载到'TT'。

我使用ValueChangeListener & addContainerFilter()实现了所有那些Combobox的过滤器。当我从'C1'中选择一个值时,它会成功过滤并在'TT'中显示相应的行。然后,当我从'c2'中选择一个值。它只是忽略由'c1'设置的过滤器,并且基于'c2'设置的值过滤值,并且在其余过滤器中相同。

我所需要的是,当我在两个Comboboxex“C1” &“C2”的树表“TT”应在两个“C1” &“C2”显示基于值的行的设定值。

filterlogic = c1 AND c2 (Correct) 

filterlogic = c1 OR c2 (Wrong) 

我想了很多,我研究了大量的代码。但是,无法完成。任何帮助表示赞赏。

+0

upvotes !!有人请回答。或者至少分享你在其中遇到的类似问题? – Gugan 2013-05-08 05:09:09

回答

1

我在我的项目中使用vaadin 6做了同样的工作,在每个组合框的“valueChangeListener”中,您需要执行查询,在该查询中必须通过从C1,C2等获取的字符串,字符串在其他参数,这将代表C2,C3等.....它会正常工作。

PS:在查询中使用“like”而不是=来获得所需的输出

+0

谢谢你的男人。我明白了你的观点。你能告诉我一些示例代码吗? – Gugan 2013-05-08 12:45:49