Como Pintar Solo la Celda y No Toda la Columna de la Celda de un dbGrid??
Lo que pasa es que quiero cambiar de fondo una Celda uso el siguiente código:
Código Delphi
[-]
procedure TfFacturas.gridFacDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
if not PVentaCheck then
if (Column.Index = 3) and (State = [gdSelected]) then begin
gridFac.Canvas.Font.Color := clBlack;
gridFac.Canvas.Brush.Color := clSilver;
gridFac.DefaultDrawColumnCell(rect,DataCol,Column,State);
end;
end;
Con el código de arriba no me pinta nada aun así si esta seleccionada la Celda No. 3, El problema es que si le quito el Tipo de Estado
"State = []" si me lo colorea pero a parte si abro un nuevo registro me pinta la celda del Nuevo registro de la misma Celda por lo que lo unico que quiero es que no me pinte nada abajo siempre y cuando se cumpla la condicion
if not PVentaCheck then.
Espero me haya Explicado.
Cualquier sugerencia se los agradezco.