Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   FireMonkey (https://www.clubdelphi.com/foros/forumdisplay.php?f=50)
-   -   Alineación de componentes ,diferencias entre tiempo de diseño y corrida (https://www.clubdelphi.com/foros/showthread.php?t=95268)

juank1971 03-07-2021 04:53:21

Alineación de componentes ,diferencias entre tiempo de diseño y corrida
 
Saludos , estoy teniendo hace un tiempo problemas en DELPHI con las alineaciones por ejemplo
Align=Top, si tengo varios componentes alineados de la misma manera, por ejemplo top,
a veces uno que está arriba se pone debajo o viceversa, y si los creo en tiempo de corrida peor el efecto. Se ordenan como les da la gana.

Esto me ha dado trabajo tanto en diseño como en corrida,
es difícil de conocer el orden final como quedará,
entonces mi duda es existe alguna idea de ordenar cualquier componente con respecto a otros que tengan la misma propiedad Align=.

por ejemplo un TVertScrollBox y dentro varios Tpanel todos alineados Align=top, incluso a veces por ejemplo en diseño tengo
TVertScrollBox
1- Panel1 rojo
2- Panel2 verde
3- Panel3 Azul

y sin tocar nada cuando ejecuto el programa o cuando miro a la derecha el Multi-device-Preview
se ve otro orden
TVertScrollBox
1- Panel2 verde
2- Panel1 rojo
3- Panel3 Azul

y en run time en el móvil físico se ve también así, diferente a como esta en tiempo de diseño.
es un error de DELPHI o me esta faltando algo. saludos juank

Neftali [Germán.Estévez] 05-07-2021 09:31:24

Es habitual y podemos considerarlo un pequeño error.
Al estar todos los elemetos alTop, segun el orden de creación es posible que no salgan como los hemos diseñado.


Es relatívamente sencillo "corregirlo" modificando la propiedad Top de los componentes.
En tu caso que tienes esto:



Cita:

1- Panel1 rojo
2- Panel2 verde
3- Panel3 Azul

Con un código como este debería valer.

Código Delphi [-]
panelRojo.Top := 5;
panelVerde.Top := panelRojo.Height + 5;
panelAzul.Top := panelVerde.Height + panelRojo.Height + 5;


Como ves es algo sencillo y hay muchas más opciones, dependiendo de tus componentes y tu código, pero esto tal vez te sirva para entender el problema.

juank1971 06-07-2021 22:29:31

:) cierto , ya recuerdo eso mismo hice hace tiempo en windows con algo asi de alineaciones, ya no recordaba gracias .


La franja horaria es GMT +2. Ahora son las 17:35:02.

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