Ir para conteúdo
Fórum Script Brasil
  • 0

Centralizar No Stringgrid (Resolvido)


Paulo Nobre

Pergunta

A algum tempo atrás, postei algumas dúvidas(3) sobre o componente StringGrid, para um projeto de horário, que estava desenvolvendo.

Uma delas dizia respeito a centralização na célula, que não é possível.

A pergunta que fiz na ocasião foi a seguinte:

As strings que são usadas nas células não têm aparentemente

nenhuma propriedade para serem alinhadas dentro delas.

A pergunta: Existe como centralizar dentro das células?

Alguém sabe o código? Ou este é mais um componente que não centraliza, já que o simples edit não centraliza.

Um colega colaborador, s3c, me respondeu:

Diretamente creio que não porque Cells[i,j] simplesmente retorna uma string, mas no evento onDrawCell você tem o Rect que é o TRect do Canvas daquela célula mais o ACol e ARow que identificam qual célula está sendo pintada e com isto creio que dê p/ centralizá-la.

Não sei como fazer isto. Alguém poderia me ajudar com o código?

O grid possui 21 linhas e 8 colunas.

Ficaria muito grato.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Sim, muito boa essa dica do s3c. Experimente esse código aí e veja se é o que você quer:

procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
var texto : string;
    largurat : integer;
    largurac : integer;
begin
 texto := StringGrid1.Cells[ACol, ARow];
 largurat := Canvas.TextWidth(texto) div 2;
 largurac := StringGrid1.ColWidths[ACol] div 2;

 StringGrid1.Canvas.FillRect(Rect);
 StringGrid1.Canvas.TextOut(Rect.Left+largurac-largurat,Rect.Top, texto);
end;

No caso ali, só deixei centralizando na horizontal (nem mexi na centralização vertical).

Certo? wink.gif

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

Prezado Grymalkin,

É isso mesmo que eu queria.

Funcionou redondinho.

Adaptei para centralizar também na vertical e ficou ótimo.

Muito obrigado a você e de tabela ao s3c, pela sugestão.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...