Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Ordenar Tabs De Un Workspace Mdi?
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Ordenar Tabs De Un Workspace Mdi? 
 
Hola,

Mi problema:
No se como ordenar los tabs de un workspace : (

Cosas que he intentado:

Estoy intentando ordenar los tabs de un workspace y no consigo encontrar la forma correcta de hacerlo, imaginé que quizás workspace tenía algún tipo de método del tipo 'sort' pero parece que no es así.

Entiendo que Workspace es un contenedor que contiene varios childrens, y parece que los childrens de un contenedor se ordenan por su z-order, o eso me a parecido entender... Sin embargo no encuentro como se hace para alterar ese z-order en tiempo de ejecución y por tanto decidir en que orden se muestran los childrens del workspace.

Se que el control workspace puede ser ordenado por el usuario haciendo click en el tabstrip, pero a mi me gustaría hacerlo automáticamente cada vez que se añade un nuevo children para evitarle al usuario ese click y para usar mi propio criterio de ordenación, si alguien sabe como se hace se lo agradecería mil.

Saludos
 



 
NidoDeCuervos - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ordenar Tabs De Un Workspace Mdi? 
 
Citar:

Entiendo que Workspace es un contenedor que contiene varios childrens, y parece que los childrens de un contenedor se ordenan por su z-order, o eso me a parecido entender... Sin embargo no encuentro como se hace para alterar ese z-order en tiempo de ejecución y por tanto decidir en que orden se muestran los childrens del workspace.


z-order si mal no recuerdo es para cambiar la capa (el plano) de presentación de los controles, es decir para poder colocar un control por debajo o por encima de otro.

Teóricamente podrías cambiar el formulario contenido en una pestaña a otra, cambiando su contenedor (parent). Entonces, el problema se reduciría a obtener una referencia de cada pestaña (contenedor). No obstante, no sé si realmente se puede hacer así.

Una forma segura, aunque menos eficiente, sería que previamente guardes en una colección o array dinámico las referencias a todos los formularios que pueden ser embebidos en el Workspace. Así, cuando debas cambiar el orden de las pestañas, haces el ordenamiento sobre el array o colección, eliminas todas las pestañas del Workspace y finalmente creas las pestañas nuevamente añadiendo los formularios a partir del array ya ordenado.
 




===================
Cómo programar con Gambas

Speed Books: informática libre.
 
fabianfv - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ordenar Tabs De Un Workspace Mdi? 
 
Hola fabianfv, gracias por responder.

Si no he entendido mal, el contenedor de un objeto incrustado en el WorkSpace no es una pestaña del workspace, si no el workspace en si mismo, es decir, el parent de los formularios que incrusto en el workspace es siempre workspace, porfavor corrigeme si me equivoco.

La segunda opción que apuntas si que creo que podría funcionar, si lo he entendido bien:

- Capturo las referencias de los objetos contenidos en el workspace en un array
- Quito todos los forms del workspace
- Las ordeno según mi criterio en el array
- Los vuelvo a añadir en el orden correcto.

En cuanto tenga un hueco lo probare y cuento que tal.

Gracias por tu ayuda, un saludo.
 



 
NidoDeCuervos - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron