2010-12-09 60 views
4

有人可以解释如何使用GWT细胞树。我试图谷歌它,但没有找到任何有价值的教程?GWT细胞树,如何使用?

谢谢

+0

,当前选中的答案是过时的,因为链接是无效的。 – Ben 2012-06-08 12:50:01

+0

链接已更新 – 2012-12-10 13:40:00

回答

2

对于那些不喜欢像我这样的google showcase例子的人可以使用这个例子; http://google-web-toolkit.googlecode.com/svn/javadoc/2.1/com/google/gwt/user/cellview/client/CellTree.html

你可以复制粘贴它,它的工作原理。 “


简单的例子


public class CellTreeExample implements EntryPoint { 

    /** 
    * The model that defines the nodes in the tree. 
    */ 
    private static class CustomTreeModel implements TreeViewModel { 

    /** 
    * Get the {@link NodeInfo} that provides the children of the specified 
    * value. 
    */ 
    public <T> NodeInfo<?> getNodeInfo(T value) { 
     /* 
     * Create some data in a data provider. Use the parent value as a prefix 
     * for the next level. 
     */ 
     ListDataProvider<String> dataProvider = new ListDataProvider<String>(); 
     for (int i = 0; i < 2; i++) { 
     dataProvider.getList().add(value + "." + String.valueOf(i)); 
     } 

     // Return a node info that pairs the data with a cell. 
     return new DefaultNodeInfo<String>(dataProvider, new TextCell()); 
    } 

    /** 
    * Check if the specified value represents a leaf node. Leaf nodes cannot be 
    * opened. 
    */ 
    public boolean isLeaf(Object value) { 
     // The maximum length of a value is ten characters. 
     return value.toString().length() > 10; 
    } 
    } 

    public void onModuleLoad() { 
    // Create a model for the tree. 
    TreeViewModel model = new CustomTreeModel(); 

    /* 
    * Create the tree using the model. We specify the default value of the 
    * hidden root node as "Item 1". 
    */ 
    CellTree tree = new CellTree(model, "Item 1"); 

    // Add the tree to the root layout panel. 
    RootLayoutPanel.get().add(tree); 
    } 
}