Показать сообщение отдельно
  #3  
Старый 29.07.2009, 16:21
Saint Garry Saint Garry вне форума
Прохожий
 
Регистрация: 12.04.2009
Сообщения: 18
Репутация: 10
По умолчанию

Наверное эта тема - есть продолжение другой : http://www.delphisources.ru/forum/showthread.php?t=8841

Если так, то почему бы не считать строки одновременно в цикле где они анализируются
Например :
Код:
private
 FLightedRowsCounter : integer;
.....
TForm1.FormCreate(sender:Tobject);
begin
FLightedRowsCounter := 0;
end;
...

procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
  Field: TField; State: TGridDrawState);
var
i:integer;
begin
if  Length(aa)>0 then
begin
i:=DBGrid1.DataSource.DataSet.RecNo;
if  DBGrid1.DataSource.DataSet.RecNo = aa[i-1].zap3  then
 begin
 dbgrid1.Canvas.Brush.Color := cllime;
  DBGrid1.Canvas.Font.Color := clRed;
   dbGrid1.DefaultDrawDataCell(Rect,Field,State);

// Увеличиваем счетчик
inc(FLightedRowsCounter);

 end;
 end;
end;

...

А дальше используеш значение FLightedRowsCounter как тебе нужно.
Ответить с цитированием