Private Sub Command1_Click()
Dim doc
Set doc = CreateObject("Microsoft.XMLDOM")
doc.async = False
doc.Load = ("datebase1.xml")
End Sub
出现错误为:
实时错误‘438’
对象不支持该属性或方法。
请问是什么原因啊

解决方案 »

  1.   

    在VB6中将XML传入一个TreeView控件    由于XML文档是以树形结构为格式,所以通常采用TreeView控件显示它们。以下码段说明了如何在Visual Basic 6将XML文档传入一个TreeView控件。
    首先,建立一个新的带有窗体的Visual Basic 6工程,然后在窗体中添加一个TreeView控件,并添加一个引用到微软XML解析器。接着,在Form_Load事件中添加如下的代码:Private Sub Form_Load()
        Dim objDOM As DOMDocument
        
        Set objDOM = New DOMDocument
        Call objDOM.loadXML( _
            "<Doc><Node1></Node1><Node2><ChildNode/></Node2></Doc>")
        
        Call AddNode(objDOM.documentElement, Nothing)
        
        Set objDOM = Nothing
    End Sub 以上代码建立并传入XML,然后调用AddNode方法。它包含两个变量:添加的XML节点,添加的TreeView节点。AddNode方法第一次被调用,"Nothing"被传递到TreeNode变量。Private Sub AddNode(ByRefXMLNode As IXMLDOMNode, ByRefTreeNode As Node)
        Dim objNode As Node
        Dim xmlNodeList As IXMLDOMNodeList
        Dim lngNodeIndex As Long
        
        On Error GoTo ERR_HANDLER    If TreeNode Is Nothing Then
            Set objNode = TreeView1.Nodes.Add
        Else
            Set objNode = TreeView1.Nodes.Add(TreeNode, tvwChild)
        End If
        
        objNode.Text = XMLNode.nodeName
        objNode.Expanded = True
        
            注释:== Add child nodes
        Set xmlNodeList = XMLNode.childNodes
        For lngNodeIndex = 0 To xmlNodeList.length - 1
            Call AddNode(xmlNodeList.Item(lngNodeIndex), objNode)
        Next lngNodeIndex
        
    ERR_HANDLER:
        If Err.Number <> 0 Then
            MsgBoxErr.Description
        End If
    End Sub首先AddNode方法添加一个新的节点到树形控件,然后将节点的文本传递给XML节点的名称。如果XML节点包含有子节点,AddNode方法则递进地添加子节点,直到所有子节点被传递。