Ver Mensaje Individual
  #1  
Antiguo 07-07-2015
Avatar de Luis M.
[Luis M.] Luis M. is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Ripollet - Barcelona
Posts: 212
Reputación: 22
Luis M. Va por buen camino
Centrar texto en columna dbgrid después de colorear

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.
Responder Con Cita