Ver Mensaje Individual
  #1  
Antiguo 17-12-2004
Avatar de merlin
merlin merlin is offline
Miembro
 
Registrado: nov 2003
Posts: 64
Reputación: 21
merlin Va por buen camino
Exclamation colorear filas dbgrid

hola a todos los foreros.

mi problema creo q es muy tipico por lo q he visto en otros hilos aunq en ningunno he encontrao la manera de solucionarlo.

Yo tengo dbgrid relaccionado con una tabla (dbase) lo q quiero es q en los registro q el campo tipo='S' se coloreen de rojo y los de tipo='E' que se queden con el color de siempre mi codigo es el siguiente:

Código:
procedure TAPUNTES.DBGrid1DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn;
  State: TGridDrawState);
begin
 if (TAPUNTES.FieldByName ('TIPO').AsString ='S') and (gdSelected in State) then
    DBGrid1.Canvas.Font.Color := clRed;

 DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
pero mi problema es que no lo termina de hacer bien porque cuando yo habro el formulario solo me ha pintado el ultimo que cumple la condicion y todos los demas los ha dejado con el color de siempre lo q si hace es q cuando me muevo por el dbgrid los colorea pero solo cuando estoy en el si me cambio se quita el color ¿como puedo hacer para q de primeras me salgan todos pintalos y q no pierdan el color cuando paso por ellos?
__________________
.:|Merlin|:.
Responder Con Cita