回 帖 发 新 帖 刷新版面

主题:[讨论]能否让mshflexgrid与adodc所指定的数据源的记录指针同步?

我现在让mshflexgrid指定数据源为adodc
      adodc.recordsource="select * from 表"
      set mshflexgrid.datasource=adodc
请问:怎样实现mshflexgrid的行的移动与数据表记录指针的移动同步?
 比如:当删除表格内一行,则数据表内也能删除这一行
       当修改表格内一行,则数据表内对应的该行也能修改
请问高手能否实现,如何实现?

回复列表 (共12个回复)

沙发

datagrid 能完全满足的你功能.

板凳

我开始也是用的datagrid,后来不知道什么原因改掉的,好象是因为格式设置的问题,给20分

3 楼

直接在控件里操作好象不行.可以另外加删除和修改按钮还有文本框.
编写函数实现.主要可以用下面一些方法
 mshflexgrid1.rowsel返回所选择的行号.
Rec_Count=mshflexgrid1.rowsel.

删除和修改数据的时候从mshflexgrid读取主键,不要在mshflexgrid里操作,
直接在数据库里操作,然后 adodc.Refresh,mshflexgrid1.refresh.就可以了.

然后把指针重新移动到 Rec_Count.

希望能帮到你

4 楼

最好给个程序代码,我看不大懂

5 楼

怎样移到rec_count所指的那条记录呢?

6 楼

双击表格某一行,rec_count=mshflexgrid.rowsel
adodc1.recordset.absoluteposition=rec_count,
adodc1.recordset.delete
adodc1.recordset.refresh
这样对吗?

7 楼

你运行一下就可以了,呵呵.我现在没时间试,不好意思.

8 楼

请问楼主:我照你说的来删除记录
          为什么每次删除后
          再添加记录时不是在数据表最后添加
          而是在被删的位置添加,而且
          删几条就在被删位置添几条
          之后才会在数据表最后添加

9 楼

删除完数据以后adodc1.movelast 就可以了`呵呵

10 楼

adodc1.recordset.movelast

我来回复

您尚未登录,请登录后再回复。点此登录或注册