FORM E OBJETO AUTOAJUSTÁVEIS NA RESOLUÇÃO
Citação::
Mais uma altenativa para checar redimensionamentos veja o arquivo em anexo!
IncrÃÂvel e excelente Classe para redimensionamento de componentes junto ao form. Se não me engano é do PSC(Planet Source Code, não tenho certeza).
Em, SetResizeControls (código do form), voce define várias alternativas para cada componente utilizando, enPositionType.... Exemplo: enResizeWidth, enFixedRight, enFixedTop, enFixedBottom.
Observe ao arrastar o form:
List1, apenas redimensiona apenas verticalmente;
Text2, redimensiona em todos os sentidos;
ComboBox1, redimensiona apenas horizontalmente;
Form ao maximizar, todos são ajustados automaticamente de acordo com as predefinições.
A classe tem que estar inserida em seu projeto e componentes devem serem definidos um a um (alguns não são redimensionáveis).
Botões são mas às vezes é melhor ficarem como estão.
Alguns não são possÃÂveis. Mesmo assim é excelente para ser trabalhada.
Não esqueça que em seu form deve conter:
Option Explicit
Private ctrResizer As clsControlResizer
Private Sub Form_Load()
SetResizeControls
End Sub
Private Sub Form_Resize()
ctrResizer.ResizeContainedControls
End Sub
Boa Noite, Estive viajando... acabei de fazer exatamente como vc pediu e deu erro
Objeto Varible or with block variable not set
e quando mando ele debugar ele seleciona ctrResizer.ResizeContainedControls
Olhei o form projeto que vc enviou e funciona normal dele, inclusive tentei copiando as linhas do Form_Load, Form_Resize, Declaration dele... copiei a sub SetResizeControls dele tb
classe add no projeto tb...
porem dar esse erro ao executar
Uma duvida: Fora esses objetos que vc colocou no projeto de exemplo, meu form possui listwiew, flexgrid e chamaleonbutton
Será se rodará com esses objetos?
Não consegui simular o erro que voce informa. Algo está conflitante no seu projeto junto às rotinas por mim enviadas. Dica: talvez o melhor é usando o exemplo que passei ir colocando cada componente, configurar opções e testando especificamente nele e não no seu projeto, para só depois, então, passar para o projeto final.
Quem desenvolveu a classe foi: ionut.brihacel@rationalsoftware.ro, e não temos como tirar duvidas.
Aqui, tudo está passando perfeitamente: listview, msflexgrid, chamaleonbutton e os outros já descritos. De uma estudada na rotina: Sub SetResizeControls(), em form1.
Os objetos desejados para redimensionamentos junto ao form tem que estarem declarados um a um, veja exemplo pra Text4:
.AddControl Text4, enPositionType.enResizeAll, irá redimensionar Text4 pra todos lados (horizontal e verticalmente), junto ao form.
Em enPositionType.... voce define cada um Exemplo, comandos: enResizeAll, enResizeWidth, enFixedRight, enFixedTop, enFixedBottom (todo o form, apenas horizontal, vertical, baixo, cima, ou combinados).
Ou, ainda, definir como enDoNothing, observe: .AddControl Label1, enPositionType.enDoNothing. O controle não será redimensionado.
Pode usar comandos opcionais na forma mais avançada juntando (combinados), ex: enResizeWidth + enFixedBottom
Importante: conforme alguns ajustes o componente poderá passar por cima dos outros, tem que fazer ensaios e dará certo.
Vou tentar hoje conforme disse