OnDrawColumnCell: Centralizar

18/11/2005

4

pessoal
utilizo a função abaixo para centralizar as colunas no dbgrid e muda-las de cor

procedure TFrm1.DBGridDrawColumnCell(Sender: TObject; const Rect: TRect; 
  DataCol: Integer; Column: TColumn; State: TGridDrawState); 
var 
  S: string; 
  R: TRect; 
begin 
  if (VAlor < 0)then 
  begin 
    with DBGrid.Canvas do 
    begin 
      Font.Color  := clRed; 
      FillRect(Rect); 

      S := Column.Field.AsString; 
      R := Rect; 
      DrawText(Handle, PChar(S), Length(S), R, DT_CENTER or DT_VCENTER); 
    end; 
  end; 
end;


só que as colunas que estão centralizadas na vertical com essa função acima, não fica centralizado na horizontal, ou seja, fica muito em cima..

como posso corrigir esta função ?

obrigado

Diogo


Responder

Posts

18/11/2005

Giancorrea

bom, como você já possui uma variável R: TRect, é só colocar assim
 R.Top := Rect.Top + 5 
você pode deixar a sua váriavel no mesmo lugar onde ela está, é só acrescentar isso aí, pelo menos comigo funcionou. Qualquer dúvida mail-me. Valeu?


Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira