注册 登录
编程论坛 VB6论坛

困扰了两天的问题,求解。

vb新生 发布于 2014-10-11 22:24, 409 次点击
我用ADO连了access数据库,然后用MSHFlexGrid1把数据库的部分字段显示在MSHFlexGrid1控件上。我想点击MSHFlexGrid控件里面的某一行,就在旁边的每个textbox控件里面把那一行的全部字段数据放在每个不同的textbox里显示出来,请问该如何做呢?谢谢!

1 回复
#2
风吹过b2014-10-12 21:40
没用过  MSHFlexGrid1 。
二种方法:
1、MSHFlexGrid1 绑定一个 SQL 命令,只显示指定的字段。
  Textbox 使用数据控件,绑定到 表 上 ,显示所有的字段。
  当单击 MSHFlexGrid1 时,找到 ID,可以使用查找命令,然后到 textbox 就会显示找到的记录。
  缺点:未点击 MSHFlexGrid1 时,会显示第一条记录。错误不好控制。

2、MSHFlexGrid1 绑定一个 SQL 命令,只显示指定的字段。
   当单击 MSHFlexGrid1 时,找到 ID,然后到 使用 SQL 查询表,
   然后手动把各个字段显示到 textbox 中。
   缺点:代码量大。


-----------浏览器写的-----------------
MSHFlexGrid1 单击
找到ID。
sql="Select * form 表 where ID=" & id             '生成SQL
rs.open conn,sql,1,1                              '打开表
if not rs.eof() then                              '有记录
   for i=0 to  rs.files.count                     '所有的字段
      if not isnull(rs.files(i)) then             '字段内容不为空
           text1(i).text = rs.files(i)            '显示
      else
           text1(i).text=""                       '否则显示空
      end if
   next i
end if
rs.close                                         '关闭表

可能有某个的参数记反掉了。
前面找ID的代码自己想办法。
1