Ver Mensaje Individual
  #6  
Antiguo 24-10-2006
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Reputación: 21
AzidRain Va camino a la fama
Espero te sirva este snippet de codigo que tenia por ahi, hace precisamente lo que quieres, aunque en este caso se sobreescribe el metodo GetCellParams para dibujar las filas con los colores que se requieran segun corresponda.

Código Delphi [-]
//Ojo: La Grilla es una TRxDBGrid de las Rx

procedure TFMasterList.GridCobranzaGetCellParams(Sender: TObject;
  Field: TField; AFont: TFont; var Background: TColor; Highlight: Boolean);

begin
if Odd( SQLData.ZMaster.RecNo )  then // Si es fila par
    begin
      If Not Highlight Then          //Y NO ESTA SELECCIONADA OJO!
      Begin
         BackGround:=clCream;   //ponle fondo crema
         AFont.Color:=clBlack;   // y letras negras
      end
      else
      Begin
          BackGround:=clCream;   //Aqui pondrias los colores que quieres
         AFont.Color:=clBlack;   // para cuando la fila este seleccionada
                                        // o bien no poner nada y quitar el else
                                        // para usar los colores por default.
      end;
    end;
  {else  Aqui puedes poner los colores que aplicarian para las filas impares
    Begin
    end;
   }

end;

Como ves es sencillo y la ventaja es que solo necesitas cambiar lo indispensable pues el resto del dibujo de la fila lo hace con los colores por defecto. Puedes jugar con condiciones para pintar una fila segun los datos del registro actual. Recuerda que el evento se ejecuta por cada registro visible en la grilla.

Espero te sirva aunque yo ya no lo uso pues ahora uso las DevExpress que estan mas fáciles de personalizar.

Saludos
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita