Hola.
Tengo una columna en un DBGrid que su alineación es centrada.
Cuando coloreo una celda de esa columna según un valor determinado,
el texto de esa celda se me posiciona a la izquierda.
No consigo que se centre el texto en esa celda.
Este es el código que utilizo:
Código Delphi
[-]procedure TBusca_Socios.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if Column.Field = DM.SociosTIPO_CUOTA then
if DM.SociosTIPO_CUOTA.AsString = 'EXCEDENCIA' then
begin
if (gdFocused in State) then DBGrid1.Canvas.Brush.Color := clRed
else DBGrid1.Canvas.Brush.Color := clYellow;
DBGrid1.DefaultDrawDataCell(rect,Column.Field,State);
end;
if Column.Field = DM.SociosESTADO then
if DM.SociosESTADO.AsString = 'B' then
begin
if (gdFocused in State) then DBGrid1.Canvas.Brush.Color := clRed
else DBGrid1.Canvas.Brush.Color := clGray;
DBGrid1.DefaultDrawDataCell(rect,Column.Field,State);
end;
DBGrid1.Columns[4].Alignment := taCenter;
end;
alguna sugerencia?
Gracias.