Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Ejemplos Con Expanders
Autor Mensaje
Responder citando   Descargar mensaje 
Mensaje Ejemplos Con Expanders 
 
Buenas!.

Pues no era tan difícil de hacer un efecto parecido al menú de "cierta página" que no voy a nombrar.
Mi idea es de tener estos expander a la izquierda del formulario. Aquí solo se muestra como es
el ejemplo que quería lograr y como siempre por falta de tiempo... ..no hacía por encontrar
una solución.

Vamos con la idea. Tengo tres expander. El objetivo es que al expandir uno de ellos, el resto debe
contraerse. En el caso de que el expander ya se encuentre expandido se contraerá o viceversa y no afectará
al resto.

 unsoloexpanderdesplegado

Lo cierto es que me compliqué al principio con la creación de grupo y con last.
Si de antemano sabemos que son tres expanders, el código podría ser este:

Public Sub Form_Open()
  'Por defecto 1 expandido
  'Expander1 no está oculto
  Expand1.Hidden = False  
  
End

Public Sub Expand2_Show()  
  'Ocultar 1 y 3

  Expand1.Hidden = True
  Expand3.Hidden = True
  
End

Public Sub Expand3_Show()
  'Ocultar 1 y 2

  Expand1.Hidden = True
  Expand2.Hidden = True
  
End

Public Sub Expand1_Show()
  'Ocultar 2 y 3

  Expand2.Hidden = True
  Expand3.Hidden = True
  
End
 


Pero y si queremos más expander dentro de un contenedor.
Pues esta vez con la creación de un grupo y con la propiedad tag.
La variable anteriorabierto es una variable de apoyo para saber cual fue
el último expander, expandido.

Private aexpanders As New Expander[]
Private anteriorabierto As Integer

Public Sub Form_Open()
  
  AgruparExpanders()
  'Por defecto vamos a expandir el expander con tag 0
  anteriorabierto = 0
  aexpanders[anteriorabierto].Hidden = False
  
End

Public Sub AgruparExpanders()
  
  Dim unobjeto As Object
  
  'Vamos a agrupar en el array de controles aexpander todos los controles expander que están contenidos en el Panel1(hijos)
  For Each unobjeto In Panel2.Children
    If unobjeto Is Expander Then
      aexpanders.Add(unobjeto)      
    Endif
  Next  
  
End

Public Sub Expansores_Show()
  
  'Siempre que el expander sea distinto al expander abierto anteriormente
  If Last.tag <> anteriorabierto Then    
    aexpanders[anteriorabierto].Hidden = True
    aexpanders[Last.tag].Hidden = False
    anteriorabierto = Last.tag
  Endif
  

End
 

Adjunto el ejemplo.

Saludos

MenuDesplegableLateral.tar.gz
Descripción: Ejemplo de menú creado con expanders. Solo un menú de un expander puede estar expandido 
Descargar
Nombre del archivo: MenuDesplegableLateral.tar.gz
Tamaño: 14.41 KB
Descargado: 42 veces
MenuDesplegableLateral.tar.gz
Descripción: Ejemplo de menú creado con expanders. Solo un menú de un expander puede estar expandido 
Descargar
Nombre del archivo: MenuDesplegableLateral.tar.gz
Tamaño: 14.41 KB
Descargado: 42 veces
MenuDesplegableLateral.tar.gz
Descripción: Ejemplo de menú creado con expanders. Solo un menú de un expander puede estar expandido 
Descargar
Nombre del archivo: MenuDesplegableLateral.tar.gz
Tamaño: 14.41 KB
Descargado: 42 veces

 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
última edición por Shell el Lunes, 23 Enero 2017, 21:21; editado 2 veces 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Recopilación De Ejemplos geaplanet General 8 Martes, 20 Julio 2010, 11:11 Ver último mensaje
estrella_de_galicia
No hay nuevos mensajes Partículas. Ejemplos Shell Aplicaciones/Fragmentos de Código 3 Domingo, 29 Junio 2014, 09:53 Ver último mensaje
jsbsan
No hay nuevos mensajes Subir Ejemplos A La Comunidad Shell Sobre Gambas-es 3 Viernes, 22 Agosto 2014, 15:21 Ver último mensaje
jguardon
No hay nuevos mensajes Ejemplos De Mi Blog v3ctor General 10 Jueves, 03 Marzo 2016, 00:09 Ver último mensaje
jguardon
 

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