Ver Mensaje Individual
  #7  
Antiguo 06-06-2007
Ecijano86 Ecijano86 is offline
Registrado
 
Registrado: may 2007
Posts: 3
Reputación: 0
Ecijano86 Va por buen camino
Cita:
Empezado por AzidRain
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
Buenas Tardes AzidRain:

No sé si leerás esto o no... pero tío, MUCHAS GRACIAS POR ESTE CÓDIGO porque tras 7 horas buscando buscando.... topamos con este código y nos lo solucionó, que nos ha abierto las puertas del cielo JAJAJAJAJAJAAJAJA

Guardaré la pistola para otro día.... xD

Muchas gracias de nuevo

Última edición por Ecijano86 fecha: 06-06-2007 a las 20:07:51.
Responder Con Cita