dbgrid中从一行换到另一行将激发什么事件?

解决方案 »

  1.   

    TDataSet.OnAfterScroll————————————————————————————————————
    宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
    ————————————————————————————————————
      

  2.   

    在程续中怎么写?:
    procedure tform1.adoquery1.onafterscroll(....)吗?
      

  3.   

    直接写在adoquery1的onafterscoll事件中
    一旦移动就会触发该事件并执行其中的代码。
      

  4.   

    doquery1不是控件,我怎么写呢?(对不起,我是新手)这个有点糊涂
    dbgrid控件中有event,我只要选择好,双击,自动产生了,而这个adoquery1,我在那儿写呢?
      

  5.   

    你的DBGrid连接的DataSource,
    DataSource又连接到一个数据集控件Table或Query或ADOTable或ADOQuery
    在这个数据集控件的事件中有一个AfterScroll事件,你双击就可以
      

  6.   

    问题应该是这样的,如果dbgrid的数据源是这样设置的,如何触发Datasource事件:
    var adotab:TAdoTable;
        dstab:TDatasource;
    begin
       adotab:=tadotable.Create(self);
       dstab:=tdatasource.Create(self);   dstab.DataSet:=adotab;
       adotab.Active:=true;
       dbgrid1.DataSource:=dstab;
       ...
    end;
      

  7.   

    那你先写一个就是要放在afterscrol里执行的过程然后这样
    var adotab:TAdoTable;
        dstab:TDatasource;
    begin
       adotab:=tadotable.Create(self);
       dstab:=tdatasource.Create(self);   adotab.AfterScroll:=你的过程名       //这样就可以了
       dstab.DataSet:=adotab;
       adotab.Active:=true;
       dbgrid1.DataSource:=dstab;
       ...
    end;