Impedir redimencionamento/movimento de componente

25/02/2003

0

Olá, povo do fórum...

Tenho um componente container que recebe um componente derivado de TPanel dentro dele (quase como um PageControl). Pois é: preciso impedir que este último seja redimencionado, tal como os TTabSheets que não podemos mecher.

O problema é que não posso fazer um [b:47ee0eccdf]Align := alCliente[/b:47ee0eccdf], visto que dentro do container irão outros componentes que seriam sobrepostos neste caso.

Alguém sabe qual mensagem devo interceptar para impedir o redimencionamento e o movimento de um componente, ou como atribuir um ClientRect especial para que restrinja parte dos componentes dentro de um container?

Agradeço, desde já. :?


Ildefonso

Ildefonso

Responder

Posts

25/02/2003

Anonymous

Cara, não lembro de ter visto a versão do delphi que vc utiliza.
Esta é uma informação muito importante, apesar de quase ninguem revelar.

Você também não mencionou se o código do seu componente é aberto ou fechado.

Se seu delphi é o 5 ou superior, acho que apenas definindo a propriedade constraint resolve o problema de redimencionamento (se o componete tiver esta propriedade).

Se este componente for descendente de TPanel, tem um evento chamado OnResize.
Você pode mapear este evento, guardando inicialmente as propriedades top, left, lenght e heigh do componente e reatribuí-las sempre que o evento for disparado.

Espero que ajude.


Responder

25/02/2003

Ildefonso

Olá, Wesley.

A versão é a 5. E o OnResize pega o dimencionamento... eu sei. Mas como tratar o simples arrastar e soltar em uma nova posição, dentro do próprio container.

O código do componente é aberto...

Agradecido...


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar