我在以下函数中,{}间包含我想请教的内容,希望,如果节点的图为ivCheck,则节点元素属性为1,否则,为0。
请教如何实现?请给代码,谢谢!
Public Sub WriteTreeToDOM(ByRef TreeNode As Node, _
ByRef xmlNode As IXMLDOMNode)
Dim objNewNode As IXMLDOMNode
Dim objDOM As DOMDocument40
Dim objChildNode As Node
Dim objAttr As IXMLDOMAttribute
On Error GoTo ERR_HANDLER
Set objDOM = xmlNode.ownerDocument
If objDOM Is Nothing Then
Set objDOM = xmlNode
End If
Set objNewNode = objDOM.createElement(TreeNode.text)
{
'创建objNewNode 的属性"checked"
If TreeNode.Image = ivCheck Then
'使属性值为1
Else
'使属性值为0
End If
}
'Add treeview node as child
Call xmlNode.appendChild(objNewNode)
'Process child nodes
If TreeNode.Children > 0 Then
Set objChildNode = TreeNode.Child
Do Until objChildNode Is Nothing
Call WriteTreeToDOM(objChildNode, objNewNode)
Set objChildNode = objChildNode.Next
Loop
End If
ERR_HANDLER:
If err.Number <> 0 Then
MsgBox err.Description
End If
End Sub'以下函数完成将Treeview控件转换为XML串的功能
Private Sub tvwDimensions_DblClick()
Dim xmlNode As IXMLDOMNode
Dim objDOM As New DOMDocument40
Set xmlNode = objDOM.createElement("root")
Call WriteTreeToDOM(tvwDimensions.Nodes(1), xmlNode)
objDOM.appendChild xmlNode
Debug.Print objDOM.xml
End Sub
请教如何实现?请给代码,谢谢!
Public Sub WriteTreeToDOM(ByRef TreeNode As Node, _
ByRef xmlNode As IXMLDOMNode)
Dim objNewNode As IXMLDOMNode
Dim objDOM As DOMDocument40
Dim objChildNode As Node
Dim objAttr As IXMLDOMAttribute
On Error GoTo ERR_HANDLER
Set objDOM = xmlNode.ownerDocument
If objDOM Is Nothing Then
Set objDOM = xmlNode
End If
Set objNewNode = objDOM.createElement(TreeNode.text)
{
'创建objNewNode 的属性"checked"
If TreeNode.Image = ivCheck Then
'使属性值为1
Else
'使属性值为0
End If
}
'Add treeview node as child
Call xmlNode.appendChild(objNewNode)
'Process child nodes
If TreeNode.Children > 0 Then
Set objChildNode = TreeNode.Child
Do Until objChildNode Is Nothing
Call WriteTreeToDOM(objChildNode, objNewNode)
Set objChildNode = objChildNode.Next
Loop
End If
ERR_HANDLER:
If err.Number <> 0 Then
MsgBox err.Description
End If
End Sub'以下函数完成将Treeview控件转换为XML串的功能
Private Sub tvwDimensions_DblClick()
Dim xmlNode As IXMLDOMNode
Dim objDOM As New DOMDocument40
Set xmlNode = objDOM.createElement("root")
Call WriteTreeToDOM(tvwDimensions.Nodes(1), xmlNode)
objDOM.appendChild xmlNode
Debug.Print objDOM.xml
End Sub
{
If TreeNode.Image = ivCheck Then
objNewNode.setAttribute "name", 1
Else
objNewNode.setAttribute "name", 0
End If
}