我正在使用Tree进行GWT应用程序,它应该从服务器加载TreeItem(我想是的 AJAX),但我不知道如何设置它将包含的根元素" +"扩展我应该从服务器加载数据。 或者可能,我是否走错路,我应该使用其他机制?
有人可以帮助我吗?
答案 0 :(得分:0)
您可以为未发现的节点添加空白子节点,并在从服务器成功接收数据时将其删除。
TreeItem<MyObject> treeItm = new TreeItem<MyObject>();
treeItm.setText("First Node");
treeItm.addTextItem("");
在OpenEvent
触发Tree
时触发服务器呼叫。成功后,您可以删除您的孩子并将数据添加到树节点(如果数据非空)。
if(objLst!=null&&!objLst.isEmpty()){
treeItm.getChild(0).remove();
for(SomeObj obj:objLst){
TreeItem<SomeObj> someObjTreeItm = new TreeItem<SomeObj>();
someObjTreeItm.setText("Node Text");
treeItm.addItem(someObjTreeItm);
}
}else{
//No data found
}
<强>更新强>
GWT没有提供更简洁的方法来做到这一点。如果您需要更简洁的方法,也可以选择FastTree。 FastTree
为您提供了可能正在寻找的方法。