DataGrid 的记录值显示问题!!!高手救我,小弟先拜谢了!!!

yjy001 2003-12-02 09:54:52
大虾们:
小弟是个新手,最近在搞一个VB+SQLServer的图书管理系统。其中有一个界面是显示图书订购信息的,我原先使用MSFlexGrid显示的记录,
先是在界面的load 时
Set myRecordset = New ADODB.Recordset
myRecordset.Open "select * from orderBook", adoConn, adOpenDynamic
Call ShowTitle
Call ShowData

其中ShowData的函数是这样的:
Private Sub ShowData()
Dim i As Integer
Dim j As Integer
Dim curentRow As Integer

curentRow = 0
Do While Not myRecordset.EOF
curentRow = curentRow + 1
For i = 1 To myRecordset.Fields.Count
MSFlexGridOrderBook.TextMatrix(curentRow, i) = myRecordset.Fields(i - 1)
Next i
myRecordset.MoveNext
Loop

myRecordset.Close
End Sub
这样的记录是可以显示出来的。后来我想改用dataGrid 来显示数据,但怎么也不知道把记录写入的方法,就是象上面
MSFlexGridOrderBook.TextMatrix(curentRow, i) = myRecordset.Fields(i - 1)
这一句的功能,在DataGrid的方法或者属性里面有这样的功能吗?

...全文
128 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
tfafei 2003-12-21
  • 打赏
  • 举报
回复
看高手的就是有收获!
md2d 2003-12-05
  • 打赏
  • 举报
回复
myRecordset1.Open "select * from orderBook", adoConn, adOpenDynamic
这句错
DataGrid不支持adOpenDynamic,可以用adOpenStatic或adOpenKeyset。
因为adOpenDynamic不支持bookmark
dj2267239 2003-12-04
  • 打赏
  • 举报
回复
小马哥 我有个简单的问题:
我在有VB是 连接数据库用的是
Public Function ConnectString() As String
ConnectString = ("FileDSN=CanKu.dsn;UID=djdj;PWD=123")
End Function
如果用TREEVIEW 作为向导在DATAGRID中显示记录怎么表示啊
在线等候
谢谢!!

jpinglee 2003-12-03
  • 打赏
  • 举报
回复
试试下面的代码:

Option Explicit
Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim sql As String


Set cnn = New ADODB.Connection
cnn.CursorLocation = adUseClient
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=yourdatabasename"
sql = "select * from tablename"
Set rs = New ADODB.Recordset
rs.Open sql, cnn
Set DataGrid1.DataSource = rs
set rs=nothing
set cnn=nothing
yjy001 2003-12-03
  • 打赏
  • 举报
回复
不行啊!
Private Sub ShowData()
Dim i As Integer
Dim j As Integer
Dim currentRow As Integer

currentRow = 0
i = 0
Do While Not myRecordset.EOF
currentRow = currentRow + 1
For j = 0 To 15
i = i + 1
DataGridOrderBook.Row = currentRow
DataGridOrderBook.Col = j
DataGridOrderBook.Text = myRecordset.Fields(i)

Next j
myRecordset.MoveNext
Loop

myRecordset.Close

End Sub
这样写出现 " RowSet not available",光标指示在 DataGridOrderBook.Row = currentRow
***************************************************
而用
Set myRecordset = New ADODB.Recordset
myRecordset1.Open "select * from orderBook", adoConn, adOpenDynamic
Set DataGridOrderBook.DataSource = myRecordset
出现"the rowset is not bookmarkable"光标指示在
Set DataGridOrderBook.DataSource = myRecordset

lemonchen 2003-12-03
  • 打赏
  • 举报
回复
没错
Private Sub ShowData()
set datagrid1.datasource=myRecordset
End Sub

1。datagrid绑定数据源就可以显示了:Set DataGrid1.DataSource = adoRecordset

Set myRecordset = New ADODB.Recordset
myRecordset.Open "select * from orderBook", adoConn, adOpenDynamic
set datagrid1.datasource=myRecordset
iriscole 2003-12-03
  • 打赏
  • 举报
回复
好多了,我帮你顶
yoki 2003-12-03
  • 打赏
  • 举报
回复
Private Sub ShowData()
set datagrid1.datasource=myRecordset
End Sub
lxqlogo0 2003-12-03
  • 打赏
  • 举报
回复
Set myRecordset = New ADODB.Recordset
myRecordset.Open "select * from orderBook", adoConn, adOpenDynamic
set datagrid1.datasource=myRecordset
另外

MSFlexGridOrderBook也可以这样帮定
set MSFlexGridOrderBook.datasource=myRecordset
j4sxw 2003-12-03
  • 打赏
  • 举报
回复
northwolves 2003-12-02
  • 打赏
  • 举报
回复
1。datagrid绑定数据源就可以显示了:Set DataGrid1.DataSource = adoRecordset
2。手工写入记录也可以,如:
For i = 0 To 5
For j = 0 To 4
DataGrid1.Row = j
DataGrid1.Col = i
DataGrid1.Text = "........."'your content
Next
Next

1,216

社区成员

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

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