procedure TForm1.BtnScrolltestClick(Sender: TObject);
var aCurPos : TBookMark;
begin
Memo1.Lines.Add(TimeToStr(now)+' Scrolltest started =====');
aCurPos:=BufDs1.Bookmark; //Save last Position
BufDs1.DisableControls;
try
//do something with DB.Table
BufDs1.First;
while not BufDs1.EOF do begin
BufDs1.Next;
end;
BufDs1.Bookmark:=aCurPos; //Locate last Position
finally
BufDs1.EnableControls; // <-- after this call, DBGrid scrolls, but it schouln't
// because old datarow in viewarea is located
end;
Memo1.Lines.Add(TimeToStr(now)+' Scrolltest ended');
end;