在用一个adoquery连接到cxGrid上,问题是当修改一下数值再游动数值集时,出现两种不情况:
如果Memo1.Lines.Add('scroll')就正常,ShowMessage('a');就出现报错。大家看看是不是Bug?
procedure TForm1.ADOQuery1BeforeScroll(DataSet: TDataSet);
begin
 // Memo1.Lines.Add('scroll');
ShowMessage('a');
end;procedure TForm1.FormCreate(Sender: TObject);
begin
ADOQuery1.Open;
end;

解决方案 »

  1.   

    procedure TForm1.ADOQuery1BeforeScroll(DataSet: TDataSet);
    begin
      if (DataSet.State = dsBrowse) or (DataSet.State = dsInsert) then
       Exit;
      Memo1.Lines.Add('scroll');
     ShowMessage('a');
    end;
      

  2.   

    cxGrid的bug,升级到最新的5.17版就没这个问题了
      

  3.   

    to cncharles(旺仔)
    怎么我没有测试出来
    因为触发ADOQuery1BeforeScroll事件之时,DataSet.State = dsBrowse,所以exit;
    showmessage('a')不能被执行.