Fórum Centralizar Form #339416
27/03/2007
0
Estou com um problema que é muito comum encontrá-lo no form. Tentei todas as alternativas, mas ao fazer testes, infelizmente encontrei a solução.
Parece brincadeira, mas não estou conseguindo centralizar o form em termos. Estou utilizando as propriedades borderstyle (deve ser bsdialog, somente com o botão fechar) e position (podesktopcenter). Quando utilizo um resolução 800x600, percebo que a parte inferior da tela fica encoberta pela barra de tarefas. Na verdade, o form deve ser centralizado dentro de uma área que compreende apenas o local onde o papel de parede é exibido. Como faço isso????
Desculpem-me por postar esta pergunta ´infantil´, mas como disse anteriormente, nenhuma das soluções que encontrei não resolveram o problema.
Desde já agradeço pela atenção e aguardo uma resposta (pode xingar, não tem problema... rs rs rs rs rs)...
Um abraço,
Rogério
Roger1976
Curtir tópico
+ 0Posts
27/03/2007
Dbergkamps10
Gostei + 0
27/03/2007
Roger1976
De qualquer forma, valeu...
Gostei + 0
27/03/2007
Massuda
Gostei + 0
27/03/2007
Roger1976
Muito obrigado pela dica, e espero que agora tenha ficado clara a minha dúvida.
Gostei + 0
27/03/2007
Massuda
Gostei + 0
28/03/2007
Dmenin
if scree.with = 800 then
form.top:=x
ae vc seta o top conforme vc acha correto
Gostei + 0
28/03/2007
Janete
Form.left := ( Screen.Width div 2 ) - ( Form.Width div 2 );
Form.Top := ( Screen.Height div 2 ) - ( Form.height div 2 );
:D
Gostei + 0
28/03/2007
Roger1976
No oncreate do form, digite o seguinte bloco:
if (Screen.Width = 800) and (Screen.Height = 600) then
frmPrincipal.Position := poDefault
else
frmPrincipal.Position := poScreenCenter;
Conclusão: o poDefault é o ideal para telas 800x600, porque ele preenche todo o espaço da área de trabalho, sem sobrepor a barra de tarefas. Numa resolução diferente, posso utilizar perfeitamente o poScreenCenter.
Muito fácil!!!!!!!
Muito obrigado!
Gostei + 0
29/03/2007
Dmenin
só nao esquece que 800x600 e 1024x768 não são as únicas resoluções de tela..sempre vai ter aquele que usa o sistema com resolução mais alta ou num notebook com widescreen
Gostei + 0
29/03/2007
Roger1976
´cannot change visible in onshow or onhide´, porém a tela desejada era aberta.
Não sei se é a melhor solução, mas farei mais testes.
Espero que todos(as) aqueles(as) que tiverem visto(vendo) a solução que adotei possam sugestionar, para que tenhamos enfim algo que possa ajudar a quem estiver passando pela mesma dificuldade.
Valeu!!!
Gostei + 0
30/03/2007
Dmenin
se vc trabalha com forms child e deixa vários abertos, permitindo q o usuário interaja com + de um ao memso tempo, vai ficar ruim pra ele pois sempre que voltar o foco para esse seu form o sistema vai jogar ele pro meio denovo...bom, mas nada q vc não possa tratar com + uma variável de controle
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)