Componente dinamico no centro do form

Delphi

29/01/2008

Pesquisei no forum e não encontrei nada a respeito, bem, minha duvida é a seguinte:
Tenho uma tabela com alguns itens e preciso mostra-los em tela, mas de forma dinâmica e sempre centralizado por exemplo:
caso tenha somente 1 item nessa tabela ele deve ficar no centro do form e com um tamanho de letra grande (o componente pra fazer isso é independente, pode ser qualquer um), e caso tenha 2 itens deve ser diminuída um pouco a fonte e criado o segundo item também centralizado (no caso o primeiro item diminuiria de tamanho e subiria um pouco no form).

Não sei se ficou claro o que preciso, mas qualquer ajuda será bem vinda.

Grato
Vanildo Prates


Vprates

Vprates

Curtidas 0

Respostas

Vprates

Vprates

29/01/2008

Ah eu utilizo delphi 6 com Fb.


GOSTEI 0
Djjunior

Djjunior

29/01/2008

serial algo do tipo

panel1.Top := self.Height shr 1 - panel1.Height shr 1;
panel1.left := self.Width shr 1 - panel1.Width shr 1;

o ´shr 2´é igual a div 2 só que muuito mais rápido uma vez que só vai gastar um ciclo do procedor. (ele move os bits uma casa pra direita)


GOSTEI 0
Vprates

Vprates

29/01/2008

Não pude testar ainda o seu codigo, mas e ao incluir o segundo componente?
como poderia fazer para continuar centralizado? qual seria o calculo necessário para sabe qual o heigth usar qdo houverem muitos componentes em tela?

Desde já agradeço a ajuda!!!

att
Vanildo Prates


GOSTEI 0
Djjunior

Djjunior

29/01/2008

bem, ai vai depender de como vc vai querer, tipo se for um debaixo do outro, e estes tiverem uma altura fixa, vc pode criar um tipo de contador, onde sempre que vc for criando os componentes vc vai acrecendo um ai no calculo que pus vc adicionaria um + (contador * xx ) onde xx é o numero de componentes já criados, as outras formas seriam uma derivação desta.


GOSTEI 0
POSTAR