关于点击Treeview以后在Listview里显示的问题!不知道那位高手能帮我解决呀!100分不够可以再加!
我现在想实现的是点击Treeview节点以后Listview里显示所有子节点的最末一级节点的内容。
我的Treeview是这样的:
+一号库(0001)
+汽车件(101)
+汽车件一架(10101)
+汽车件一架一层(1010101)
+火花塞(101010101) '物品1
+转向灯(101010102) '物品2
+汽车件一架二层(1010102)
+刹车(101010201) '物品3
+减震(101010202) '物品4
+汽车件二架(10102)
+汽车件二架一层(1010201)
+方向盘(101020101) '物品5
+小汽车件(102)
+小汽车件一架(10201)
+小汽车件一架一层(1020101)
+左转向(102010101) '物品6
+右转向(102010102) '物品7
+小汽车件一架二层(1020102)
+轮胎(102010201) '物品8
+反光镜(102010202) '物品9
+小汽车件二架(10202)
+小汽车件二架一层(1020201)
+大风挡(102020101) '物品10
+二号库(0002)
+三号库(0003)
+四号库(0004)
我想实现:
点击 +一号库(0001)时Listview里显示 +火花塞(101010101) '物品1
+转向灯(101010102) '物品2
+刹车(101010201) '物品3
+减震(101010202) '物品4
+方向盘(101020101) '物品5
+左转向(102010101) '物品6
+右转向(102010102) '物品7
+轮胎(102010201) '物品8
+反光镜(102010202) '物品9
+大风挡(102020101) '物品10
点击+汽车件(101)时Listview里显示 +火花塞(101010101) '物品1
+转向灯(101010102) '物品2
+刹车(101010201) '物品3
+减震(101010202) '物品4
+方向盘(101020101) '物品5
点击+汽车件一架(10101)时Listview显示
+火花塞(101010101) '物品1
+转向灯(101010102) '物品1
+刹车(101010201) '物品1
+减震(101010202) '物品1
点击+汽车件一架一层(1010101)时Listview显示
+火花塞(101010101) '物品1
+转向灯(101010102) '物品2
依此类推
也就是显示:点击节点下面所有子节点的最末一级的节点内容.不知道我说得清楚吗?那位大哥帮帮忙呀!
只差一步了,不过比较难.以下代码能实现:点击Treeview节点以后Listview里显示相邻的所有子节点
Private Sub TreeView1_NodeClick(ByVal Node As MSComctlLib.Node)
Dim sTr As String
Dim sql2 As String
Dim sql As String
Dim mylen As Integer
Dim rs As New ADODB.Recordset
sTr = Node.Key
mylen = Len(sTr)
sTr = Right(sTr, mylen - 1)
sql2 = "select * from As_Inventory_Subject where CMatSortId='" & sTr & "'"
rs.Open sql2, conn
rs.MoveFirst
Dim i As Integer
Do While Not (rs.EOF Or rs.BOF)
i = i + 1
lv1.ListItems.Add (i), , rs.Fields("CMatId") '科目编码
lv1.ListItems(i).ListSubItems.Add , , rs.Fields("CMatName") '科目名称
lv1.ListItems(i).ListSubItems.Add , , rs.Fields("CInvStd") '规格
lv1.ListItems(i).ListSubItems.Add , , rs.Fields("CMUName") '单位
rs.MoveNext
Loop
rs.Close
End Sub