USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Tratamento de Resoluções
0ut0fBound
VILA VELHA / ES
ES - BRASIL
ENUNCIADA !
Postada em 31/01/2010 16:08 hs            
Olá Senhores,

Qual a melhor maneira de lidar com diferentes resoluções de monitores de maneira que não sobre e nem falte espaço ao ponto de o sistema ficar esteticamente feio?

Essa dúvida é mais questão de boas práticas. :-)

------------------------------------------
Maycon Maia Vitali (0ut0fBound)
http://maycon.hacknroll.com
http://blog.hacknroll.com
Hack'n Roll
   
LCRamos
Pontos: 2843
GOIANIA
GO - BRASIL
ENUNCIADA !
Postada em 01/02/2010 12:02 hs            
Eis uma pergunta, que faço há dois anos, e todas as soluções encontradas, não facilitaram em nada, e então usei o POG (Programação Orientada a Gambiarra), e vem funcionando bem.
Isto é complicado, mas vai a dica mais ou menos.
 
Nomeie duas variáveis publicas, do tipo Double
cwidTH e cheigHT
 
Uma variável pública do tipo Form
fresiZE
 
Uma variável pública do tipo Control
oobJ
 
 
Pegue a resolução do monitor, form main
 
    xTWIPS = Screen.TwipsPerPixelX
    yTWIPS = Screen.TwipsPerPixelY
    yPIXELS = Screen.Height / yTWIPS
    xPIXELS = Screen.Width / xTWIPS
 
Use como padrão a 800x600
 
    cheigHT = (yPIXELS / 600)
    cwidTH = (xPIXELS / 800)
 
Ao carregar o formulário
 
    Me.Height = (9000 * cheigHT)
    Me.Width = (12000 * cwidTH)
    Set fresiZE = Me
    TAMANHO
   
Chame uma função pública que ajeita os controles no formulário(TAMANHO)
 
Public Function TAMANHO()
 Dim i As Integer
 Dim nCOL As Column
    For Each oobJ In fresiZE.Controls
         If oobJ.Top > 0 Then
               oobJ.Top = (oobJ.Top * cheigHT)
         End If
         If oobj.Left > 0 Then
              oobJ.Left = (oobJ.Left * cwidTH)
         End If
         oobJ.Height = (oobJ.Height * cheigHT)
         oobJ.Width = (oobJ.Width * cwidTH)
     Next
End Function
 
A função está resumida, é preciso que vc teste colunas de grades, linhas etc, na função,
e também verifique que alguns controles, não aceitam a mudança, em tempo de execução,
alguns aceitam height, não width, e vice versa.
 
Mas, está ai a idéia, e foi o que fiz, trabalhoso, sim, no inicio, depois fica fácil, e funciona perfeitamente.
 
Agora o resto é com voce.
 
 
vlu//
 
 
 
   
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página