FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Problema con imagenes de Treeview
Hola
mi problema es el siguiente: estoy usando un treeview que carga un imagen a lado de cada nodo desde un Imagelist. Hasta ahí todo bien, el problema es que cuando selecciono un nodo se me cambia la imagen por la primera del Imagelist. Cuando deja de estar seleccionado vuelve a su imagen original. ¿Como puedo evitar que se cambie la imagen al seleccionar? Saludos y muchas gracias |
#2
|
||||
|
||||
Es que también está la propiedad: SelectedIndex. Esta propiedad assigna una imagen distinta a los nodos seleccionados (y por defecto, su valor es 0). Así pues debes asignarle también un valor a esta propiedad, si no quieres que cambie, en tu caso tienes que poner el mismo valor que en ImageIndex.
Saludos. Última edición por xEsk fecha: 12-05-2008 a las 14:31:04. |
#3
|
|||
|
|||
Hola
gracias por la respuesta. Si, se que esa propiedad existe y que por defecto su valor es 0. Mi problema es como hacer para cambiar el valor SelectedIndex durante la ejecución para ponerle el valor del ItemIndex del nodo pulsado, ya que nada más pulsarlo se pone autmaticamente ItemIndex:=SelectedIndex y no al revés que es lo que a mi me interesa. No se si me explico. A ver si se os ocurre algo. Gracias y un saludo! |
#4
|
||||
|
||||
A ver, si rellenas tú el TreeView con Items creados por ti, es tan fácil como asignarle el valor SelectedIndex el mismo que ImageIndex:
Ejemplo:
Pongamos por ejemplo, que el TreeView no lo estas rellenando tú, sino que es otro "proceso" el que lo rellena por ti, y tu no tienes control sobre este (y no quieres realizar un bucle cambiando los valores), puedes capturar el evento "OnGetSelectedIndex" del TTreeView. Ejemplo:
Saludos. |
#5
|
||||
|
||||
Cita:
Saludos |
#6
|
|||
|
|||
Hola de nuevo!
he leido tus comentarios (muchas gracias por contestar) y a ver si consigo explicar exactamente lo que me pasa. Yo tengo una funcion que va creando los nodos del arbol, y cuando los va creando va poniendo un valor en el ImageIndex de cada nodo 1,2,3 según el tipo de nodo que sea (no está relacionado con la profundidad del nodo, es decir un nodo de profundidad 2, puede tener ImageIndex=1,2,3 indistintamente). Relleno el arbol perfectamente y se muestra tal y como yo quiero. El problema viene cuando selecciono un nodo, y se me pone la imagen que tiene configurada el SelectedIndex (0 en este caso). Yo lo que quiero es que al seleccionar un nodo, antes de que se me cambie la imagen por la indicada en SelectedIndex, poder cambiar el valor de SelectedIndex para que sea igual a ImageIndex. De esta forma no se cambiaría la imagen del nodo al seleccionarlo. Espero haberlo explicado bien ahora Pensé en usar el evento OnClick del arbol, pero ese evento no me proporciona el Nodo sobre el que pulso. He probado el evento que me indicabas OnGetSelectedIndex pero este evento se produce constantemente, no solo cuando selecciono un nodo. ¿Se te ocurre alguna idea? porque yo ya estoy en blanco jejej Gracias y un saludo!! |
#7
|
|||
|
|||
Solucionado!!
Hola
pues eso, que ya lo he solucionado, la final era una tontería (es lo que me pasa por ser novato y no tener mucha idea jejej) El evento que tenia que usar era el Onchage() que se produce al seleccionar un nodo diferente y además me proporciona el nodo que selecciono. De esta forma lo unico que tengo que hacer es poner en ese evento: Arbol.Selected.SelectedIndex := Node.ImageIndex; ya las imagenes se mantienen al cambiar de nodo seleccioando. Lo dejo aquí escrito por si a alguien le sirve. Un saludo y muchas gracias por haber ayudado. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Imagenes en un TREEVIEW | mRoman | OOP | 14 | 01-06-2012 16:59:25 |
Imagenes mas grandes en un TreeView | hmrvivas | OOP | 1 | 13-07-2007 06:02:43 |
Problema con TreeView | CFPA86 | Varios | 1 | 09-03-2007 22:20:57 |
TreeView cambio de imagenes | Manuel | Varios | 2 | 25-09-2006 15:53:18 |
Imagenes en el TreeView | Gustavo Gowdak | OOP | 2 | 13-12-2004 02:25:10 |
|