Despues de probar lo que te respondí, realmente he de reconocer que no funciona, porque no, sin más, no voy a entrar en detalles
Cuando el resultado debería ser algo pareceido a eso:
103 07 ....
103 07 ....
103 07 ....
103 07 .... Cambiando aqui el color por el cambio de valor de la columna
103 08 ....
103 08 ....
103 08 ....
103 08 ....
103 08 ....
103 08 ....
Lo más parecido a esto que puedes hacer es que cuando cambie el valor de la columna 2, hagas un cáculo y que cambies el valor del color. Para ello, tendrás que tener llena la secuencia 01, 02, 03, 04,..... Si tuvieses 01,03,04, no te valdría por lo menos según el código que te adjunto
Código:
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if (Sender as TDBGrid).Datasource.DataSet.Fields[5].AsInteger mod 2 = 0 then
(Sender as TDBGrid).Canvas.Brush.Color := clSkyBlue
else
(Sender as TDBGrid).Canvas.Brush.Color := clinfobk;
(Sender as TDBGrid).Canvas.Font.Color := clBlack;
(Sender as TDBGrid).DefaultDrawColumnCell(rect,DataCol,Column,State);
end;
Pues eso, si te vale bien, si no, .....
Un saludo