VB 6.0,我想让treeview链接数据库,在Form_load里执行如下代码,但是显示错误,With快变量未设置

我想让最后大概是呈现这样的效果******************************************************************代码If... 我想让最后大概是呈现这样的效果
******************************************************************代码
If Adodc1.Recordset.RecordCount > 0 Then
Adodc1.Recordset.Movefirst
Do While Adodc1.Recordset.EOF = False
Key = Trim(Adodc1.Recordset.Fields("知识点")) '主节点在treeview中显示
Text = Trim(Adodc1.Recordset.Fields("知识点"))
Set Node1 = TreeView1.Nodes.Add(, , Key, Text, 1)
Adodc2.RecordSource = "select * from 选择题信息表 where 题目所属知识点='"&Adodc1.Recordset.Fields("知识点") & "'" '查询次节点
Adodc2.Refresh
If Adodc2.Recordset.RecordCount > 0 Then
Adodc2.Recordset.Movefirst
Do While Adodc2.Recordset.EOF = False
Key = Trim(Adodc2.Recordset.Fields("题目编号")) '次节点显示
Text = Trim(Adodc2.Recordset.Fields("题目编号"))
Set Node2 = TreeView1.Nodes.Add(Node1.Index, tvwChild, Key, Text, 2) '设置TreeView1控件的节点 文本 和 图标(另外:1 为ImageList控件图标的索引值)
Adodc2.Recordset.Movenext
Loop
End If

Adodc1.Recordset.Movenext
Loop
End If
展开
 我来答
szqaly
2015-02-27 · TA获得超过1745个赞
知道大有可为答主
回答量:2107
采纳率:77%
帮助的人:1595万
展开全部
数据库有没有载入啊,这种情况发生较多。除非你把数据库发给我来测试一下,光看字面我是看不出来。邮件:2978454279@qq.com
追问
已发送,谢谢!!!
追答
百度越来越抠门了,字数限制的那么严。
我简单说说,
Adodc1.Refresh '首次使用时数据库还没载入,除非已经绑定了某个控件。所以先刷新一下。
If Adodc1.Recordset.RecordCount > 0 Then
。。。。。。。。。。
Key = Trim(Adodc2.Recordset.Fields("题目编号"))
Text = Trim(Adodc2.Recordset.Fields("题目编号"))
Key = Replace(Key, ".", "_") '好像数字不能作关键字,所以把小数点替换为下划线吧。
Set Node2 = TreeView1.Nodes.Add(Node1.Index, tvwChild, Key, Text, 2)
。。。。。。。。。。
其实这句Adodc2.Recordset.MoveFirst没必要,记录集刚载入时指针默认在第一行。
来自:求助得到的回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式