如何为vaadin Treetable中的子节点设置样式?

时间:2013-06-19 10:12:29

标签: vaadin

我需要在Treetable中将样式设置为子节点。

我需要的是,当我展开父行时,新添加的子行应该被赋予不同的颜色,而父行必须具有不同的颜色,是否有可能这样做?

提前感谢您的回复。

的问候, 阿拉文德

2 个答案:

答案 0 :(得分:0)

您可以尝试以下代码......

mainTable.setCellStyleGenerator(new TreeTable.CellStyleGenerator() {
  @Override
  public String getStyle(Object itemId, Object propertyId) {
    return "my-css-class";
  }
});

答案 1 :(得分:0)

这对我有用

  1. 根节点 - 绿色
  2. root的第一个孩子 - 灰色
  3. 其余的儿童元素 - 白色
  4. this.getTable()。setCellStyleGenerator(new Table.CellStyleGenerator(){

            boolean rootRow = false;
    
            @Override
            public String getStyle(Object itemId, Object propertyId) {
                if (getTable().isRoot(itemId)) {
                    rootRow = true;
                    return "highlight-green";
                } else if (!getTable().isRoot(itemId) && rootRow) {
                    rootRow = false;
                    return "highlight-gray";
                } else {
                    return "v-table-row-odd";
                }
    
            }
        });