2010-12-09 64 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); 
    } 
}