fijate este codigo (no lo pude probar)
Código Delphi
[-]
procedure TBuscarForm.ClientesDBGridDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
var
cColor: TColor;
begin
if State = [] then
TDBGrid(sender).Canvas.Brush.Color := clWhite
else
begin
TDBGrid(sender).Canvas.Brush.Color := $00E8D3B5;
if Column.Index = 0 then
begin
with QueryDataModule.ClienteZQuery do
begin
if FieldByName('Conyuge').IsNull then DatosConyugeBitBtn.Visible := false
else
DatosConyugeBitBtn.Visible := FieldByName('Conyuge').Value;
if FieldByName('Observaciones_Check').IsNull then
ObservacionesBitBtn.Visible:=false
else
ObservacionesBitBtn.Visible := FieldByName('Observaciones_Check').Value;
if FieldByName('Baja').Value = 1 then
cColor := clRed
else
cColor := clGreen;
DatosConyugeBitBtn.Font.Color := cColor;
ObservacionesBitBtn.Font.Color := cColor;
BorrarBitBtn.Font.Color := cColor;
DatosClienteBitBtn.Font.Color := cColor;
DatosVentaBitBtn.Font.Color := cColor;
EstadoBitBtn.Font.Color := cColor;
ExportarBitBtn.Font.Color := cColor;
ImprimirBitBtn.Font.Color := cColor;
UltimaModificacionBitBtn.Font.Color := cColor;
PagosBitBtn.Font.Color := cColor;
ContracargosBitBtn.Font.Color := cColor;
TarjetasBitBtn.Font.Color := cColor;
RescindirBitBtn.Font.Color := cColor;
BitBtn1.Font.Color := cColor;
BitBtn2.Font.Color := cColor;
DatosClienteBitBtn.Visible:=True;
DatosVentaBitBtn.Visible:=True;
BorrarBitBtn.Visible:=True;
EstadoBitBtn.Visible:=True;
ExportarBitBtn.Visible:=True;
ImprimirBitBtn.Visible:=True;
UltimaModificacionBitBtn.Visible:=True;
PagosBitBtn.Visible:=True;
ContracargosBitBtn.Visible:=True;
TarjetasBitBtn.Visible:=True;
RescindirBitBtn.Visible:=True;
BitBtn1.Visible:=True;
BitBtn2.Visible:=True;
end;
end;
end;
TDBGrid(Sender).DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
