hola,
seria algo asi
Código Delphi
[-]procedure T_main.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
x : integer;
begin
if (gdSelected in state) then
(sender as TDBGrid).canvas.Brush.Color := $00C08000
else
if (sender as TDBGrid).datasource.dataset.RecNo mod 2 = 0 then
(sender as TDBGrid).canvas.Brush.Color := clAqua - $000b0b0b
else
(sender as TDBGrid).canvas.Brush.Color := clAqua - $00010101;
(sender as TDBGrid).canvas.FillRect(Rect);
if Column.Field <> nil then
begin
case Column.Alignment of
taCenter : x := (Rect.Right - Rect.Left) div 2 - (sender as TDBGrid).canvas.TextWidth(Column.Field.asstring) div 2;
taLeftJustify : x := 0;
taRightJustify : x := Rect.Right - (sender as TDBGrid).canvas.TextWidth(Column.Field.asstring);
end;
(sender as TDBGrid).DefaultDrawing := true;
(sender as TDBGrid).canvas.TextOut(Rect.Left + x,Rect.top,Column.Field.asstring);
end;
end;
EDITO : modificacion para el justify y el selected, y el activerecord por el RecNo