Você está aqui: Delphi ::: VCL - Visual Component Library ::: TStringGrid |
Como centralizar os títulos das colunas (ou o conteúdo de qualquer célula) de um TStringGrid do DelphiQuantidade de visualizações: 13646 vezes |
Em algumas situações nós precisamos centralizar os títulos das colunas de um TStringGrid. Em geral os títulos das colunas são exibidos nas células da primeira linha fixa do TStringGrid. Nesta dica eu mostrarei a forma mais comum de alcançar este efeito. Note que a técnica pode ser usada para centraliar o conteúdo de qualquer célula da grid: ---------------------------------------------------------------------- Precisa de ajuda? Chama no WhatsApp +55 (62) 98553-6711 (Osmar) Este código foi útil? Paga um cafezinho pra mim :-( PIX: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); var conteudo: String; alinhamento_anterior: Word; begin // vamos centralizar os títulos das colunas, ou seja, o conteúdo // das células na primeira linha if ARow = 0 then begin // vamos obter o conteúdo da célula conteudo := (Sender as TStringGrid).Cells[ACol, ARow]; // vamos obter o alinhamento atual alinhamento_anterior := SetTextAlign((Sender as TStringGrid).Canvas.Handle, TA_CENTER); // vamos colocar o conteúdo de volta na célula (Sender as TStringGrid).Canvas.TextRect(Rect, Rect.Left + (Rect.Right - Rect.Left) div 2, Rect.Top + 5, conteudo); // vamos voltar o alinhamento anterior para as demais células SetTextAlign((Sender as TStringGrid).Canvas.Handle, alinhamento_anterior); end; end; Aqui nós temos duas chamadas à função SetTextAlign() da API do Windows. Na primeira vez nós obtemos o alinhamento atual e definimos o novo alinhamento como TA_CENTER. Na segunda chamada nós voltamos o alinhamento anterior. Se não fizermos este procedimento, todas as demais células da grid terão seus conteúdos também alinhados ao centro. |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de Delphi |
Veja mais Dicas e truques de Delphi |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |