Ver Mensaje Individual
  #8  
Antiguo 01-08-2013
amadis amadis is offline
Miembro
 
Registrado: may 2005
Ubicación: San José, Colón, Entre Ríos, Argentina
Posts: 322
Reputación: 22
amadis Va por buen camino
Ecfisa, interesante el metodo.

No logré que funcione pero tomé este dato de referencia que me interesó.

COLORS[Odd(Rect.Top div DefaultRowHeight)

para adaptar a lo que uso que es el metodo normal que mencionabamos antes. Hay algunos detalles que resta pulir aun.

De hecho reemplazando el defaultrowheight por 18 funciona pero hay un detalle de pintado al recorrer los registros uno por uno, bajando de lo que se ve en la pantalla o bien subiendo. AL usar page down para navegar el grid no hay problemas.

Código Delphi [-]
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
const
  COLORS : array[Boolean] of TColor = (clYellow, clMoneyGreen);
begin
  with DBGrid1 do
  begin
    Canvas.Brush.Color := COLORS[Odd(Rect.Top div 18)];
    DefaultDrawColumnCell(Rect, DataCol, Column, State);
  end;
end;

Falta pulir esos detalles de refresco pero es prometedor ya que no utiliza el numero de registro.
Responder Con Cita