首页 > 学院 > 开发设计 > 正文

在VB6中将XML传入一个TreeView控件

2019-11-18 17:38:46
字体:
来源:转载
供稿:网友
首先,建立一个新的带有窗体的VisualBasic6工程,然后在窗体中添加一个TreeView控件,并添加一个引用到微软xml解析器。

接着,在Form_Load事件中添加如下的代码:

PRivateSubForm_Load()
DimobjDOMAsDOMDocument

SetobjDOM=NewDOMDocument
CallobjDOM.loadXML(_
"")

CallAddNode(objDOM.documentElement,Nothing)

SetobjDOM=Nothing
EndSub

  以上代码建立并传入XML,然后调用AddNode方法。它包含两个变量:添加的XML节点,添加的TreeView节点。AddNode方法第一次被调用,"Nothing"被传递到TreeNode变量。

PrivateSubAddNode(ByRefXMLNodeAsIXMLDOMNode,ByRefTreeNodeAsNode)
DimobjNodeAsNode
DimxmlNodeListAsIXMLDOMNodeList
DimlngNodeIndexAsLong

OnErrorGoToERR_HANDLER

IfTreeNodeIsNothingThen
SetobjNode=TreeView1.Nodes.Add
Else
SetobjNode=TreeView1.Nodes.Add(TreeNode,tvwChild)
EndIf

objNode.Text=XMLNode.nodeName
objNode.Expanded=True

注释:==Addchildnodes
SetxmlNodeList=XMLNode.childNodes
ForlngNodeIndex=0ToxmlNodeList.length-1
CallAddNode(xmlNodeList.Item(lngNodeIndex),objNode)
NextlngNodeIndex

ERR_HANDLER:
IfErr.Number<>0Then
MsgBoxErr.Description
EndIf
EndSub

  首先AddNode方法添加一个新的节点到树形控件,然后将节点的文本传递给XML节点的名称。如果XML节点包含有子节点,AddNode方法则递进地添加子节点,直到所有子节点被传递。

->


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表