FORM E OBJETO AUTOAJUSTÁVEIS NA RESOLUÇÃO

AMELINHACODE 03/11/2022 22:00:45
#500720
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?


JOSE 04/11/2022 11:23:21
#500727
Olá,
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.
AMELINHACODE 14/11/2022 11:02:39
#500775
Bom Dia JOSE,

Vou tentar hoje conforme disse
ANDPAG 24/02/2023 14:57:40
#501057
Descompacta o controle em uma pasta, insere ele no seu projeto e depois é só arrasta-lo para dentro do seu Form e esta resolvido. Todos os controles vão redimensionar com o Form.
Página 2 de 2 [13 registro(s)]
Faça seu login para responder