Portal    Foro    Buscar    FAQ    Registrarse    Conectarse

Seleccionar El Iten Siguiente O Anterior De Un TreeView

Seleccionar El Iten Siguiente O Anterior De Un TreeView
Artículo
Responder citando    Descargar mensaje  
Mensaje Seleccionar El Iten Siguiente O Anterior De Un TreeView 
 
Hola a todos.

Alguien podría decirme como hacer para, si esta seleccionado un ítem en un TreeView, pasar al inmediatamente anterior o al inmediatamente posterior.
Gracias.
Saludos.



 
tincho - Ver perfil del usuario Enviar mensaje privado  
tincho [ Viernes, 17 Abril 2020, 00:39 ]
 


Seleccionar El Iten Siguiente O Anterior De Un TreeView
Comentarios
Responder citando    Descargar mensaje  
Mensaje Re: Seleccionar El Iten Siguiente O Anterior De Un TreeView 
 
tincho escribió:  
Hola a todos.

Alguien podría decirme como hacer para, si esta seleccionado un ítem en un TreeView, pasar al inmediatamente anterior o al inmediatamente posterior.
Gracias.
Saludos.



MoveAbove() para mover justo al anterior y

MoveBelow() para mover al siguiente ítem.

Tal como se describe en el wiki de ayuda de gambas:

http://gambaswiki.org/wiki/comp/gb.qt4/treeview

Pero no lo he probado nunca, no he usado ese control por el momento.

Saludos



 
jguardon - Ver perfil del usuario Enviar mensaje privado  
jguardon [ Viernes, 17 Abril 2020, 19:55 ]
Responder citando    Descargar mensaje  
Mensaje Re: Seleccionar El Iten Siguiente O Anterior De Un TreeView 
 
jguardon escribió:  
tincho escribió:  
Hola a todos.

Alguien podría decirme como hacer para, si esta seleccionado un ítem en un TreeView, pasar al inmediatamente anterior o al inmediatamente posterior.
Gracias.
Saludos.

MoveAbove() para mover justo al anterior y
MoveBelow() para mover al siguiente ítem.
Tal como se describe en el wiki de ayuda de gambas:
http://gambaswiki.org/wiki/comp/gb.qt4/treeview
Pero no lo he probado nunca, no he usado ese control por el momento.
Saludos

No es eso, gracias de todas maneras.
Saludos.



 
tincho - Ver perfil del usuario Enviar mensaje privado  
tincho [ Viernes, 17 Abril 2020, 20:57 ]
Responder citando    Descargar mensaje  
Mensaje Re: Seleccionar El Iten Siguiente O Anterior De Un TreeView 
 
Entonces no entendí tu pregunta...



 
jguardon - Ver perfil del usuario Enviar mensaje privado  
jguardon [ Viernes, 17 Abril 2020, 23:21 ]
Responder citando    Descargar mensaje  
Mensaje Re: Seleccionar El Iten Siguiente O Anterior De Un TreeView 
 
La idea es la siguiente, intento imitar el comportamiento de un visor de pdf donde mediante dos botones puede seleccionar la pagina anterior o posterior.
Dejo este código de ejemplo para mas claridad.
' gambas class file

Public Sub Form_Open()

  LoadTree()

End

Private Sub LoadTree()

  Dim d As String

  TreeView1.Clear

  TreeView1.Add("rx", "Raíz", Picture["icon:/16/user"])

  For Each d In Dir(User.Home, "", gb.Directory)
    If String.Mid(d, 1, 1) <> "." Then
      TreeView1.Add(d, d, Picture["icon:/16/directory"], "rx")
    Endif
  Next

  TreeView1["rx"].Expanded = True

End

Public Sub Button1_Click()

  ' ¿Que pongo aquí para que el item selecionado sea el anterior?

End

Public Sub Button2_Click()

  ' ¿Que pongo aquí para que el item selecionado sea el posterior?

End
 

Saluds.



 
tincho - Ver perfil del usuario Enviar mensaje privado  
tincho [ Sabado, 18 Abril 2020, 00:07 ]
Responder citando    Descargar mensaje  
Mensaje Re: Seleccionar El Iten Siguiente O Anterior De Un TreeView 
 
Yo creo que con los métodos que he puesto arriba (que mueven el cursor interno del control) y la propiedad Item (que devuelve el ítem al que apunta el cursor interno) sería posible.

Lo que pasa es que el ítem seleccionado puede no coincidir con el cursor interno que puedes desplazar antes de de efectuar la selección o devolver la referencia al ".Current" item.

Otro detalle a tener en cuenta es que con esos métodos te mueves por los hijos (siblings) de un padre, entonces si estás en el padre o raíz, no va a funcionar a menos que primero selecciones la rama apropiada. El treeview es un poco engorroso de manejar y entender, la verdad. Pero creo que es la única forma de poder controlar las acciones que tienen lugar dentro de él, dado que pueden contener múltiples ramas y sub-ramas.

Ahora mismo estoy en un Mac, voy a ver si puedo instalar un Linux en Virtualbox y lo compruebo.

Saludos



 
jguardon - Ver perfil del usuario Enviar mensaje privado  
jguardon [ Sabado, 18 Abril 2020, 09:58 ]
Responder citando    Descargar mensaje  
Mensaje Re: Seleccionar El Iten Siguiente O Anterior De Un TreeView 
 
jguardon escribió:  
Ahora mismo estoy en un Mac


    te has pasado al lado hiper oscuro!



 
tercoIDE - Ver perfil del usuario Enviar mensaje privado  
tercoIDE [ Sabado, 18 Abril 2020, 14:42 ]
Responder citando    Descargar mensaje  
Mensaje Re: Seleccionar El Iten Siguiente O Anterior De Un TreeView 
 
Intenta con el código de abajo: -


Public Sub Button1_Click()

  TreeView1.MoveCurrent()
  
  If TreeView1.MoveAbove() Then
    TreeView1.Selection = [TreeView1.Keys[TreeView1.Keys.Max]]
  Else
    TreeView1.Item.Selected = True
  End If

End

Public Sub Button2_Click()

  TreeView1.MoveCurrent()
  
  If TreeView1.Movebelow() Then
    TreeView1.Selection = [TreeView1.Keys[0]]
  Else
    TreeView1.Item.Selected = True
  End If

End




 
cogier - Ver perfil del usuario Enviar mensaje privado  
cogier [ Sabado, 18 Abril 2020, 15:03 ]
Responder citando    Descargar mensaje  
Mensaje Re: Seleccionar El Iten Siguiente O Anterior De Un TreeView 
 
tercoIDE escribió:  
jguardon escribió:  
Ahora mismo estoy en un Mac


    te has pasado al lado hiper oscuro!


        



 
vuott - Ver perfil del usuario Enviar mensaje privado  
vuott [ Sabado, 18 Abril 2020, 17:15 ]
Responder citando    Descargar mensaje  
Mensaje Re: Seleccionar El Iten Siguiente O Anterior De Un TreeView 
 
cogier escribió:  
Intenta con el código de abajo...

Perfecto, funciono !!
Nota: Solo hay que tener la precaución de que exista al menos un ítem seleccionado en el Treeview de lo contrario no funciona. Así que agregue una linea en el método de carga del treeview que selecciona un ítem.
TreeView1["NombreDeUnItem"].Selected = True
 

Gracias.
Saludos.



 
tincho - Ver perfil del usuario Enviar mensaje privado  
tincho [ Lunes, 20 Abril 2020, 12:56 ]
Mostrar mensajes anteriores:    
 
Publicar nuevo tema  Responder al tema  Página 1 de 2
Ir a la página 1, 2  Siguiente
 

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


 



 

cron