【vb+sql】选中datagrid的某一行,使其第一个单元格的内容显示在text文本框中?

sinat_24804707 2014-12-27 02:47:55

比如这个情况,我就需要选中第一行的时候,text1.text=1001
我已经编写的代码:
Option Explicit


Private Sub Command1_Click()
Dim cn As New ADODB.Connection
Dim rs_findsp As New ADODB.Recordset
cn.CursorLocation = adUseClient
cn.ConnectionString = "driver={SQL Server};server=(local);uid=;pwd=;database=market"
cn.Open
rs_findsp.Open ("select 商品号,商品名称,单价,商品类型,厂商,库存量 from 商品表 where 商品类型= '" & Combo1.Text & "' "), cn, adOpenDynamic, adLockOptimistic
Set DataGrid1.DataSource = rs_findsp
DataGrid1.Refresh
DataGrid1.AllowAddNew = False
DataGrid1.AllowDelete = False
DataGrid1.AllowUpdate = False
Set DataGrid1.DataSource = rs_findsp
End Sub

Private Sub Form_Load()

Combo1.AddItem "食品"
Combo1.AddItem "饮料"
Combo1.AddItem "日用品"
Combo1.AddItem "乳制品"
Combo1.AddItem "香烟"

End Sub

实在是不会写,毕竟初学者。求教!万分感谢!
...全文
814 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
饮水需思源 2015-01-19
  • 打赏
  • 举报
回复
改用mshflexgrid控件试试: set mshflexgrid1.datasource=记录集 private sub mshflexgrid1_click() textbox1.text=mshflexgrid1.textmatrix(mshflexgrid1.row,0) end sub
of123 2014-12-29
  • 打赏
  • 举报
回复
因为 DataGrid 是与记录集绑定的,且选中 DataGrid 每一列时记录集的相应记录也被选中,因此你只需引用记录中相应的字段内容。
一如既往哈 2014-12-27
  • 打赏
  • 举报
回复
给你一个通用的方法吧:
Sub Test()
    Dim iRow As Long, iCol As Long
    iRow = 2
    iCol = 1
    With DataGrid1
        Text1.Text = .Columns(iCol).CellValue(.GetBookmark(iRow))
    End With
End Sub

这个方法,只要指定行列(都是从0开始的)就可以读取到相应的值

1,216

社区成员

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

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