Este foro usa cookies
Este foro utiliza cookies para almacenar su información de inicio de sesión si está registrado y su última visita si no lo está. Las cookies son pequeños documentos de texto almacenados en su computadora; las cookies establecidas por este foro solo se pueden usar en este sitio web y no representan ningún riesgo de seguridad. Las cookies en este foro también rastrean los temas específicos que ha leído y la última vez que los leyó. Si Ud. continúa navegando, entenderemos que acepta todas las cookies.

Se almacenará una cookie en su navegador, independientemente de la elección, para evitar que se le vuelva a hacer esta pregunta. Podrá cambiar la configuración de sus cookies en cualquier momento utilizando el enlace en el pie de página.

El foro antiguo se encuentra accesible desde https://foro.gambas-es.org en modo de solo lectura.

Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5

Splitter, inversión de lugar de los controles hijos
#1

Buenas!.

Imaginar que tenéis dos paneles y estos están dentro de un control slider (su contenedor padre ).

Vais añadiendo controles en cada uno de los paneles y cuando vais a ejecutar el proyecto
os encontráis que el panel1 está en el lugar del panel2 y viceversa, distinto a lo que veis en el modo edición.

Aun no he encontrado el motivo, ya que lo hice de cero y no me ha pasado, en cambio me he encontrado este problema
en un proyecto que estuve modificando y que no lo había creado personalmente. Es raro el efecto.

¿ Os ha pasado a vosotros ?. Por algún motivo ocurre, probablemente por los organizadores que los contienen,
Ojo, sin usar la propiedad Direction. Que esta propiedad si que hace efecto raro.

Saludos

"Pero no toques, por qué tocas? - Amador"
    ¡Gracias!
#2

Hace años que no uso ese contenedor. Ni idea.

Saludos

No podemos regresar
    ¡Gracias!
#3

Cada uno de los dos paneles está compuesto de tres paneles apilados en vertical.

Panel 1 - Distribución Vertical.
Subpanel Contenedor 1 - Distribución Horizontal
Subpanel Contenedor 2 - Distribución Horizontal
Subpanel Contenedor 2 - Distribución Horizontal

Panel 2 - Distribución Vertical.
Subpanel Contenedor 1 - Distribución Horizontal
Subpanel Contenedor 2 - Distribución Horizontal
Subpanel Contenedor 2 - Distribución Horizontal

Ambos Paneles, Panel1 y Panel2 se encuentra en un Splitter con distribución horizontal.
El control Splitter sustituyó a VSplit y HSplit.

La solución fue:

He cambiado Panel 1 y Panel 2 por dos VBox y ya no se intercambia el lugar del Panel1 y el Panel2.

Supongo que vosotros también os habréis encontrado problemas parecidos con los contenedores ó organizadores del espacio( como se llaman en otros lenguajes).
Pero más bien debió ser con los "Box". Aquí fue al revés.
 
Cita:Hace años que no uso ese contenedor. Ni idea.

Entonces , ¿ Cómo creas un "Layout" ?.  Ejemplo tienes dos paneles sobre un formulario y quieres que el primer panel ocupe el 40% del formulario y el otro el 60%.
Cuando expandes ese "Layout" se sigue manteniendo.

Supongo que juegas con el evento Resize del formulario.

Saludos

"Pero no toques, por qué tocas? - Amador"
    ¡Gracias!
#4

Cita:Entonces , ¿ Cómo creas un "Layout" ?.  Ejemplo tienes dos paneles sobre un formulario y quieres que el primer panel ocupe el 40% del formulario y el otro el 60%.
Cuando expandes ese "Layout" se sigue manteniendo.
Uso un Splitter, que creo que es al que te estás refiriendo como Slider por error (en mi anterior respuesta asumí que hablabas del ToolPanel, que también desliza sus hijos y que no uso desde hace años). Un Slider es una barra con un botón que se desliza, no un contenedor.

El Splitter, como todos los contenedores, ubica sus hijos dependiendo del tipo de la propiedad Arrangement y buscando en su interior quién va primero. Quiero decir que si el Arrangement es vertical, colocará primero aquél que tenga la propiedad "Y" menor y el último el que la tenga mayor.

Cierto es que en ocasiones (no recuerdo si con Splitter o con otro contenedor), me he encontrado con que no había manera de cambiar el orden y he tenido que llegar a eliminar el control y volver a crearlo para que se ubicara bien. En tu caso, al cambiar el tipo de hijo de panel a vBox, es exactamente lo que has hecho, así que supongo que se trata del mismo bug...

Saludos

No podemos regresar
[-] Los siguientes 1 usuarios dice gracias a Shordi por este post:
  • Shell
    ¡Gracias!
#5

(05-01-2023, 11:07)Shordi escribió:  Uso un Splitter, que creo que es al que te estás refiriendo como Slider por error (en mi anterior respuesta asumí que hablabas del ToolPanel, que también desliza sus hijos y que no uso desde hace años). Un Slider es una barra con un botón que se desliza, no un contenedor.

Efectivamente era el splitter.

[Imagen: tL4BipB.png]
(05-01-2023, 11:07)Shordi escribió:  En tu caso, al cambiar el tipo de hijo de panel a vBox, es exactamente lo que has hecho, así que supongo que se trata del mismo bug...

Es bien raro el efecto.

He cambiado el título del mensaje.


Saludos

"Pero no toques, por qué tocas? - Amador"
    ¡Gracias!


Posibles temas similares…
Tema / Autor Respuestas Vistas Último mensaje

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)