收录日期:2019/02/20 03:34:07 时间:2016/05/22 08:22:26 标签:VB基础类
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset

Private Sub DataGrid1_Click()
Text1.Text = rs!员工编号
End Sub

Private Sub Form_Load()
Set conn = New ADODB.Connection
With conn
    .Provider = "MSDASQL"
    .ConnectionString = "DSN=TS;"
    .Open
End With
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseClient
SQL = "select UserID as 员工编号 from PersonInformation"
rs.Open Trim(SQL), conn, adOpenKeyset, adLockOptimistic

Set DataGrid1.DataSource = rs
End Sub


运行后当我点击datagrid边缘三角时text1中的数据就会变成我所点击行的记录

但当我不点击边缘三角,而点击行里面的内容时,text1中的数据不会显示所点记录的值
需要再次点击才能显示,为什么?有什么办法吗?

程序运行的图片 http://sxhv998.y365.com/1.jpg
http://sxhv998.y365.com/2.jpg
http://sxhv998.y365.com/3.jpg
http://sxhv998.y365.com/4.jpg
http://sxhv998.y365.com/5.jpg
源代码 http://sxhv998.y365.com/DataGrid.jar
Private Sub DataGrid1_Click()
rs.bookmark=datagrid1.bookmark
Text1.Text = rs!员工编号
End Sub

其实是定义为双击事件更有效
方法1:DataGrid1.RecordSelectors = False去掉三角
方法2:去掉DataGrid1的Click事件将你的代码移动到DataGrid1的RowColChange事件中
方法3:去掉DataGrid1的Click事件,在Set DataGrid1.DataSource = rs后加入一下代码
       Set Text1.DataSource = rs
       Text1.DataField = "员工编号"
       Text1.Locked = True
改用mousedown或mouseup事件
Click事件会被单元格抢先吸收。

求助!!shell调用问题 DLL的参数调用问题 一个关于winform的比较难的问题 访问刚做的asp.net 出现乱码 除了改config里面那句话,怎么实现编码从utf-8到gb2312的转换。。。急。。。。 学了一年c发现才发现的问题 asp.net网站出现 乱码 asp中,不用组件,怎么上传图片及修改图片 请教NET Framework 数据提供程序针对不同数据库的效率对比? 请问高手,可以用JS发送邮件吗? C语言输入输出的问题 如何使datawindow在detail中仅有0行数据时,仍然显示summary中的内容 安装SUN java System Portal Server的问题 请教一下键盘钩子的问题 Select的onchange 事件 安装SUN java System Portal Server的问题 求问oracle 10g创建存储过程参数设置的问题! asp怎么向数据库里添加时间数据呢? 两个窗体(分别是j1,j2), 从j1中弹出j2,要求j2关闭时 将j2中txt1(文本框)中的值传回到j1 有什么好方法么? JS高手请进(删除附件以后再新建附件,列表还出现上一次的附件) 跪求刻录系统盘的方法 编译组件时,找不到system.web.dll? 如何改变按钮图标的大小使其适合按钮的大小 怎么把函数中的指针的值(内容)返回出来 Windows快捷键大全 有谁听说过艾联科这个公司的. set fs=server.CreateObject(\"scripting.filesystemobject\") 为什么错 我喜欢的女人跟着别人走了··· tar命令如何压缩某目录下的特定后缀的文件?