我在dataset的很多事件里判断数据集状态,从而禁止记录指针移动,但都没成功。请问该怎么控制一下?

解决方案 »

  1.   

    使用book,想禁止记录指针移动是不可能的
      

  2.   

    一种方法是先锁定窗口,
    Lockwindowupdate(DBGridEh1.Handle);之后再解除Lockwindowupdate(0);
      

  3.   

    在DataSource的OnStateChange事件里写代码:
     dbgrid.enable:=not(datasource.dataset.state in [dsInsert,dsEdit]);
      

  4.   

    用book,在当前记录做书签,添加或修改后,回到书签位置。
    这个贴我看到过,你搜索一下,有结论的。
      

  5.   

    你如果只是在修改时不想让数据感知控件刷新,可以试一下component.dataset.disablecontrols和
    component.dataset.eablecontrols
      

  6.   

    我试过了
    但用disablecontrols 不太可行 添加修改不了
    我用了dbgrid.enabled
    还是谢谢各位