Vaadin覆盖表内Button的列排序

时间:2011-02-22 15:10:28

标签: java liferay vaadin

我制作了一个Vaadin表,其中包含(除了字符串)一个按钮(带有链接样式和描述),它的效果很好。

只有一个问题:我无法对列进行排序!我一直试图找到一种方法来覆盖列的正常排序,这样它将获取我的Button的值,然后从A-Z或Z-A中对其进行排序。我想默认只是字段的toString,但我不确定。

示例:

表格列(如生成位置):

  

table.addContainerProperty(Translator.translate(“column.message”),Button.class,null);

...

            Button messageButton = prepareButton(result);
            resultComponent.getTable().addItem(new Object[] {
                    messageButton,
                    result.getPortlet(),
                    result.getSsn(),
                    result.getSam(),
                    result.getDate()
            }, itemId++);

任何方式我都可以覆盖排序?或者写下我自己的排序类或类似的东西。

1 个答案:

答案 0 :(得分:3)

看看this。总而言之,您可以扩展组件(在本例中为Vaadin按钮)并让子类实现Comparable,或者您可以使用ItemSorter。