Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Redimensionar componente (https://www.clubdelphi.com/foros/showthread.php?t=50749)

gallipi 27-11-2007 15:15:23

Redimensionar componente
 
Tengo un componente que es un teclado que hereda de TPanel.
Dentro del panel tengo un monton de botones y quiero que cuando redimensione el panel afecte a los botones que tengo dentro.

Gracias por la ayuda

maeyanes 27-11-2007 15:25:00

Puedes usar la propiedad Anchors de los botones...

Revisa la ayuda de Delphi al respecto...


Saludos...

Lepe 27-11-2007 16:04:12

No te aconsejo que uses los Anchors de cada tecla (botón que representa una letra), porque vas a tener incomodidades.

Si trabajas en BDS2006 tienes una especie de PanelGrid, es un panel con celdas, dentro de cada celda pones un botón, Creo que podría servir para redimensionar correctamente cada botón.

Tal y como lo tienes planteado, te aconsejaría que el panel general tuviera dos propiedades ButtonHeight y ButtonWidth.
en el OnResize del panel general, deberías dividir el ClientWidth entre los botones que caben por filas, así sabrás el ancho que le corresponde a cada botón, y asignas la propiedad ButtonWidth.

Lo mismo para ButtonHeight.

Al asignar una de estas propiedades, haces un bucle que recorra todos los botones y le asignes dicho tamaño, así como el Left y Top que tendrán que recalcularse de nuevo.

En lugar de botones, yo hubiera usado TFrames, ya que puedes añadir más propiedades de una forma fácil.

Acabo de estrenarme en el ftp del club al subir el Calendario dinámico con frames.zip. Está hecho en bds2006 pero se podrá usar en otra versión inferior, además incluyo el ejecutable.

Saludos


La franja horaria es GMT +2. Ahora son las 19:27:56.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi