smartgwt beginner-如何在文本区域中将xml显示到树中

时间:2012-03-22 21:04:41

标签: smartgwt

我正在使用Smart GWT 3.0 LGPL-我试图在树中显示用户输入文本区域的整个XML块。

我可以从用户输入的xml中获取nodelist,但是在Smart GWT中,Tree小部件仅接受TreeNode []成员作为数据。

如何将NodeList(使用GWT的内置XML解析器获得)转换为TreeNode []?我的方法是否正确(以树形式显示xml)?或解决这个问题的解决方案与我的想法完全不同?

2 个答案:

答案 0 :(得分:1)

我假设您使用SmartGWT的TreeGrid对象来创建树。 TreeGrid只是一个专门的ListGrid,而后者可以将它数据绑定到Datasource,它可以轻松解析XML。看看这个example。它应该可以帮助您创建问题的解决方案。如果您需要的只是一棵简单的树,则只能在TreeGrid中显示一个字段。

如果您无法通过URL访问xml数据(例如通过文本区域访问它们),则在将它们解析为NodeList之后,您应该迭代它们并创建一个TreeNode对象数组。对于每个Something对象,您应使用setAttribute(attributeName,attributeValue)方法设置其关联的TreeNode对象的属性。然后创建一个Tree对象,从根开始,您可以使用树的各种方法在所需位置添加TreeNode对象。然后一个简单的:treeGrid.setData(树树)将加载并在TreeGrid中显示您的数据。

答案 1 :(得分:0)

您可以创建一个数组TreeNode [],其大小为nodelist的长度,并在一个循环中放置一个值。之后,您可以在树中设置此TreeNode []。