Tree - drag&drop nodes - refresh?

我只是一个虾纸丫 提交于 2019-12-02 02:21:07

Wrap your output in a DeferredCommand, and you'll get the correct output.

public class HelloGwt implements EntryPoint 
{
  public void onModuleLoad() 
  {
    Tree tree = new Tree();
    tree.setModelType(TreeModelType.PARENT);

    final TreeGrid grid = new TreeGrid();
    grid.setCanReorderRecords(true);
    grid.setCanReparentNodes(true);
    grid.setData(tree);

    tree.add(createNode("a"), tree.getRoot());
    tree.add(createNode("b"), tree.getRoot());
    tree.add(createNode("c"), tree.getRoot());

    grid.addFolderDropHandler(new FolderDropHandler(){

    public void onFolderDrop(FolderDropEvent event)
    {
      DeferredCommand.addCommand(new Command()
      {
        public void execute()
        {
          for (ListGridRecord node : grid.getRecords()) 
            System.out.println(Tree.nodeForRecord(node).getName());
        }});
      }});


    RootPanel.get().add(grid);
  }

  private TreeNode createNode(String name)
  {
    TreeNode node = new TreeNode();
    node.setName(name);
    node.setID(name);
    return node;
  }
}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!