删除GWT Tree的根项旁边的+(加号)

use*_*897 2 css gwt

我想知道是否有人知道是否有可能删除GWT树中根项目旁边出现的'+'符号?我没有看到CSS规则来处理它.可以用一个GIF替换+号吗?

(以下GWT手册的改编代码,用于说明目的)

TreeItem root = new TreeItem("root"); //希望从此项旁边删除+符号

  root.addItem("item0");
  root.addItem("item1");
  root.addItem("item2");
  root.setState(true, true);
  // Add a CheckBox to the tree
  TreeItem item = new TreeItem(new CheckBox("item3"));
  root.addItem(item);

  Tree t = new Tree();
  t.addItem(root);

  // Add it to the root panel.
  RootPanel.get().add(t);
Run Code Online (Sandbox Code Playgroud)

use*_*897 7

CSS样式根本不适用于此.相反,它需要为树使用不同的构造函数.如果将spacer.png设置为1x1透明PNG,它将删除+符号.这是我使用的完整代码.

正确的方法如下:

public interface MyResources extends ClientBundle {
      public static final MyResources INSTANCE =  GWT.create(MyResources.class);

      @Source("spacer.png")
      public ImageResource leaf();


    }


public class TreeImagesExample implements Tree.Resources
{


    @Override
    public ImageResource treeClosed() {
        // TODO Auto-generated method stub
        return MyResources.INSTANCE.leaf();
    }

    @Override
    public ImageResource treeLeaf() {
        // TODO Auto-generated method stub
        return MyResources.INSTANCE.leaf();
    }

    @Override
    public ImageResource treeOpen() {
        // TODO Auto-generated method stub
        return MyResources.INSTANCE.leaf();
    }

} 

Main Function:
     TreeImagesExample tx= new TreeImagesExample();
                Tree t = new Tree(tx);
                t.addItem(root);
Run Code Online (Sandbox Code Playgroud)

为了使其正常工作,我们当然还需要一个SelectionHandler,以便我们可以在树项上注册树点击,而不是(现在不存在的)+符号.