treeview出现实时错误怎么回事
实时错误35603无效的关键字
我想用递归生成一树。但是改不好。出现实时错误35603无效的关键字。错误定位在
Set NewNode = TreeView1.Nodes.Add("K_" & key, tvwChild, sKey, sName)可我并不知道哪里错了。
数据库
partno部门编号
partname部门名称
parentno父部门名称
Private Sub loadtree()
Set adoRec = adoConn.Execute("select * from part where ParentNo = '0'")
Dim str_Key As String, str_Key1 As String
Dim str_Name As String
TreeView1.Nodes.Clear
adoRec.MoveFirst
Do Until adoRec.EOF
str_Key = Trim(adoRec.Fields("PartNo"))
str_Name = adoRec.Fields("PartName")
AddRootNode "K_" & str_Key, str_Name
AddChildNode str_Key'错误出现在这个函数中
adoRec.MoveNext
Loop
adoRec.Close
End Sub
’添加头结点
Sub AddRootNode(str_Key As String, str_Name As String)
Dim ndNewNode As Node
Set ndNewNode = TreeView1.Nodes.Add(, tvwChild, str_Key, str_Name)
End Sub
'我本想将这个函数写成递归调,生成子树
Sub AddChildNode(key As String)
Dim rs As New ADODB.Recordset
Dim NewNode As Node
Dim sSql As String
Dim sKey As String
Dim sName As String
sSql = "select * from part where ParentNo = '" & key & "'"
If Not rs.State = adStateClosed Then rs.Close
rs.CursorLocation = adUseClient
rs.Open sSql, adoConn
If rs.RecordCount <> 0 Then
rs.MoveFirst
Do Until rs.EOF
sKey = Trim(rs.Fields("PartNo"))
sName = rs.Fields("PartName")
'就是这里提示实时错误35603无效的关键字,但我又不知道哪里有问题
Set NewNode = TreeView1.Nodes.Add("K_" & key, tvwChild, sKey, sName)
rs.MoveNext
Loop
End If
rs.Close
End Sub
请大家帮忙指出错误在哪里,应该怎么写?