Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

我的Treeview只能加载二级项目,相同的代码,三级和四级不知为何加不了?

旭日东升  发表于:2015-07-08 08:39:23  
复制

想用一段比较简单的代码为treeview加载数据,但是只能加二级项目,三级和四级加不了,
测试了一天,实在不明白哪里出了问题?请坛友过目一下:�������ش˸���

1、表的结构

2、我的代码:
Option Compare Database
Option Explicit
Private Sub Command1_Click()
Dim rs As Recordset
Set rs = CurrentDb.OpenRecordset("select * from 学生表")
On Error Resume Next '此句是用来处理下面循环里面Index语句的
ActiveXCtl0.nodes.Add , , "学生管理", "学生管理"
With rs
Do Until .EOF
        If ActiveXCtl0.nodes(.Fields(2)).Index < 0 Then
        ActiveXCtl0.nodes.Add "学生管理", 4, .Fields(2), .Fields(2)
        End If
        If ActiveXCtl0.nodes(.Fields(3)).Index < 0 Then
        ActiveXCtl0.nodes.Add .Fields(2), 4, .Fields(3), .Fields(3)
        End If
        ActiveXCtl0.nodes.Add .Fields(3), 4, .Fields(1), .Fields(1)
.MoveNext
Loop
End With
End Sub
3、下面是运行结果:(但是年级下面没有班级和姓名)

 

Top
煮江品茶 发表于:2015-07-08 09:18:18
年级、班级在数据表冗余,不宜用非正常逻辑处理应由正常逻辑易于处理的事物。

总记录:1篇  页次:1/1 9 1 :