注册 登录
编程论坛 VB6论坛

通过data控件绑定Access2000数据库,单击下拉框没反应?

zhaomg 发布于 2014-02-17 20:25, 490 次点击
在下初学,是照着教材上一个例子做的,Data1控件放好了,几个Connect、DatabaseName、RecordSource属性都连接到那个Access2000数据库及包含的“成绩”表了,然后放的下拉框控件combo1的DataSource属性也都设为Data1了。接着combo1(还有个combo2)的单击事件代码也正确输入如下:
Private Sub Combo1_Click()
Data1.Recordset.MoveFirst
Data1.Recordset.FindFirst "学号='" & Combo1.Text & "'"
Combo2.Text = Data1.Recordset("姓名")
End Sub
但是一运行单击这个下拉框就是没反应显示为空,明明Access数据库文件里那个“成绩”表我已经输了几条记录在那。反复对照教材,没找到设错的和遗漏的地方啊?这应该是个较简单的数据库程序吧,但愣是困了我停在这一整天多了无解,还求大神指点啊?


[ 本帖最后由 zhaomg 于 2014-2-17 20:39 编辑 ]
5 回复
#2
chen35232014-02-18 21:19
用DataCombo控件就可以了,我使用Adodc控件,编码:
  s = App.Path & "\龙新.mdb"
   Adodc5.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source =" + Chr(34) + s + Chr(34) & ";Persist Security Info=False" '打开数据库
    = adCmdTable
    Adodc5.RecordSource = "款项名称表"
    Adodc5.Refresh
     Set DataCombo2.RowSource = Adodc5
       DataCombo2.ListField = "款项"
#3
风吹过b2014-02-19 10:40
你的 VB6 ,装了 SP6 补丁吗?
没装SP6补丁的 VB6 里的 data 控件,不支持 Access2000 数据库

另外不知道你控件的 属性,所以你这个事件再写一个
写一个   Sub Combo1_Change() 的事件,照样这个写。

 Sub Combo1_Click()    当单击控件时发生
 Sub Combo1_Change()  当控件内容改变时发生
#4
alike1232014-02-19 15:25
凑人气,大伙都在干嘛
#5
zhaomg2014-02-19 22:17
回复 3楼 风吹过b
装SP6.0了,所以才能识别链接到Access2000格式及里面的表
另外改到change事件里也试过,同样无反应
这是教材的实例,作为初学者我还是最好按照实例做一下打好基础,所以就停在这了
#6
zhaomg2014-02-20 14:20
有大侠指点已解决:
原因是你的Combo1里没有项目,可在属性窗口里添加,也可以在程序里加
Private Sub Form_Load()
    Combo1.AddItem "01"
    Combo1.AddItem "02"
End Sub
这样单击这个下拉框,并选择后,就可执行Combo1_Click了
1