求助datacombox控件

glq57324812 2011-03-11 05:10:34
我想将数据库中一个字段名下所有的内容添加到datacombox的下拉列表中。。。请问如何实现?
...全文
138 21 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
glq57324812 2011-03-11
  • 打赏
  • 举报
回复
求教。。。因为之前都是用ADODB的 突然要改就有点麻烦。。
chinaboyzyq 2011-03-11
  • 打赏
  • 举报
回复
[Quote=引用 19 楼 glq57324812 的回复:]

能用ADODB实现么?
[/Quote]
glq57324812 2011-03-11
  • 打赏
  • 举报
回复
非常感谢 。行了。。。。。。还小问下这个只能用ADODC控件的方式么? 能用ADODB实现么?
chinaboyzyq 2011-03-11
  • 打赏
  • 举报
回复
把你conn连接部分发出来看看。
chinaboyzyq 2011-03-11
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 glq57324812 的回复:]

我用ADODC控件试过了 可是这样DataCombo里是表里的全部内容。。。我要怎么限定我想要的内容呢?
DATASource=ADODC的话。。SQl不是白查了么。。
[/Quote]
adodc也是可以写SQL语句的Adodc1.RecordSource = "select * from 表1 where..."
只要替换成你的SQL语句就行了。

好好看我三楼给你例子
glq57324812 2011-03-11
  • 打赏
  • 举报
回复
sql = "select [设备名称] from [下拉表] where [设备名称] in ('Micron','CFV800-1','CFV800-2','CFV800-3','CFV800-4','C30U','VF3') "
rs.Open sql, conn, 1, 1
Set DataCombo1.DataSource = rs
Set DataCombo1.RowSource = rs
DataCombo1.DataField = rs.Fields(0).Name
DataCombo1.ListField = rs.Fields(0).Name
还是米有。。。~~~~~~~~~~~!
chinaboyzyq 2011-03-11
  • 打赏
  • 举报
回复
删除这两句rs.Close: Set rs = Nothing,绑定时不可以关闭记录集。
glq57324812 2011-03-11
  • 打赏
  • 举报
回复
我用ADODC控件试过了 可是这样DataCombo里是表里的全部内容。。。我要怎么限定我想要的内容呢?
DATASource=ADODC的话。。SQl不是白查了么。。
glq57324812 2011-03-11
  • 打赏
  • 举报
回复
在DataCombo1.text中只有第一项的显示 但是下拉列表里还是什么都没有。
glq57324812 2011-03-11
  • 打赏
  • 举报
回复
。。。。ADODC1控件有 然后方括号也加了。。再然后Fields(0).Name也改了。 可是。。还是没有 。蛋疼。
chinaboyzyq 2011-03-11
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 glq57324812 的回复:]

难道是控件加少了?我就是ADOdc控件的 我看百度搜的要加data控件么?
[/Quote]
不会连ADODB和ADODC都分不清吧,你的方式叫ADODB,要引用ADODB
我给你的方式要在窗体添加一个ADODC1控件,然后用我给你的程序方式测试。

与data无关
chinaboyzyq 2011-03-11
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 glq57324812 的回复:]

请解释下Adodc1.Recordset.Fields(0).Name
这个 ,,刚自学中。。很没方向
[/Quote]
Fields(0).Name即你出库的的字段的字段名,无需Fields("设备名称").Name。
你做为新手劝你建立数据时最好不要使用中文字段名,很多时候你可能会遇到不必要的麻烦。
别外把你中文字段名加方括号试试:
sql = "select [设备名称] from [下拉表] where [设备名称] in ('Micron','CFV800-1','CFV800-2','CFV800-3','CFV800-4','C30U','VF3')"
glq57324812 2011-03-11
  • 打赏
  • 举报
回复
难道是控件加少了?我就是ADOdc控件的 我看百度搜的要加data控件么?
glq57324812 2011-03-11
  • 打赏
  • 举报
回复
sql = "select 设备名称 from 下拉表 where 设备名称 in ('Micron','CFV800-1','CFV800-2','CFV800-3','CFV800-4','C30U','VF3') "
rs.Open sql, conn, 1, 1
Set MSHFlexGrid1.DataSource = rs
Set DataCombo1.DataSource = rs
Set DataCombo1.RowSource = rs
DataCombo1.DataField = rs.Fields("设备名称").Name
DataCombo1.ListField = rs.Fields("设备名称").Name
rs.Close: Set rs = Nothing
加了个MSHFlexGrid1表。。。能显示数据 应该不是RS的问题吧。。。
chinaboyzyq 2011-03-11
  • 打赏
  • 举报
回复
看看rs中是否有记录,别的没问题。
glq57324812 2011-03-11
  • 打赏
  • 举报
回复
各位 给点链接也行。。。。感觉就差那么一点了。。。求真相,无限刷新中。。
glq57324812 2011-03-11
  • 打赏
  • 举报
回复
sql = "select 设备名称 from 下拉表 where 设备名称 in ('Micron','CFV800-1','CFV800-2','CFV800-3','CFV800-4','C30U','VF3') "
rs.Open sql, conn, 1, 1
Set DataCombo1.DataSource = rs
Set DataCombo1.RowSource = rs
DataCombo1.DataField = rs.Fields("设备名称").Name
DataCombo1.ListField = rs.Fields("设备名称").Name
这是我自己改的,,还是没显示出来 ,还有什么缺的么。。。
glq57324812 2011-03-11
  • 打赏
  • 举报
回复
请解释下Adodc1.Recordset.Fields(0).Name
这个 ,,刚自学中。。很没方向
chinaboyzyq 2011-03-11
  • 打赏
  • 举报
回复

Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\Administrator\My Documents\db2.mdb;Persist Security Info=False"
Adodc1.CommandType = adCmdText
Adodc1.RecordSource = "select * from 表1" '数据表中的记录为 张三 李四 王五
Adodc1.Refresh
Set DataCombo1.DataSource = Adodc1
Set DataCombo1.RowSource = Adodc1
DataCombo1.DataField = Adodc1.Recordset.Fields(0).Name
DataCombo1.ListField = Adodc1.Recordset.Fields(0).Name
DataCombo1.Text = DataCombo1.VisibleItems(1) '选择第二条,即 李四

glq57324812 2011-03-11
  • 打赏
  • 举报
回复
。。。如何绑定呢???
加载更多回复(1)

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧