2011-12-21 74 views
1

我正在使用vaadin的TreeTable。有沒有辦法刪除或隱藏沒有任何子項的第一級對象上的下拉箭頭,並且仍然正確地將對象垂直放置?vaadin TreeTable刪除父母沒有子女的下拉列表

UPDATE

最終解決方案,如果有人有興趣:

我添加FieldFactory表

protected class TableFactory extends DefaultFieldFactory{ 
    private static final long serialVersionUID = 1L; 

    private MyTreeTable table; 
    public TableFactory(MyTreeTable table){ 
     this.table = table; 
    } 

    @Override 
    public Field createField(Container container, Object itemId, 
      Object propertyId, Component uiContext) { 
     Field field = super.createField(container, itemId, propertyId, uiContext); 

     if(itemId instanceof TaskHeadRow){ 
      if(((TaskHeadRow)itemId).getTask() instanceof SystemTask){ 
       table.setChildrenAllowed(itemId, false); 
      } 
     } 

     return field; 
    } 
} 

回答

3

如果定義該項目的箭頭不顯示:

treetable.setChildrenAllowed("myitemid", false); 
+0

正確答案。但是,這會阻止將新項目作爲子項添加到該項目。在這種情況下,我想我必須通過CSS刪除它。或將第一列大小設置爲1或2像素 – 2014-07-23 12:56:23