我在DBGrid显示数据进行修改,当数据量较大时,修改其中某条数据时,
完成后,更新DBgrid数据,发现光标不在修改的这条记录上,使用起
不方便,如何做到对DBGrid中数据修改时,光标如何移到修改的记录上,请各位高手帮帮忙?

解决方案 »

  1.   

    用Edit,Post
    这样的话不会移动纪录,如果用execsql的话,你得重新refresh,这样怎么弄效果都不好
    顶多可以做到纪录还是那条记录,但是记录在屏幕上的位置肯定会变
      

  2.   

    修改前,获取要修改记录的Book:
    var bmModi: Pointer;bmModi := MyTable.GetBookMark;
    修改后:
    MyTalbe.GotoBook(bmModi);
      

  3.   

    在修改前,先将当前记录的recno保存给一个变量,修改更新后,再将这个变量赋回给recno