![]() |
Arrastre TreeNode
Ante todo buenos días.
Tengo un ligero problema con la clase TTreeNode. Os expongo mi caso. Estoy en el desarrollo de una aplicación que en una de sus pantallas usa el componente Treeview para mostrar una estructura en forma de árbol. El tema es que las especificaciones de la pantalla me obligan a poder arrastrar un TreeNode fuera del TreeView hacia una "zona de arrastre (TPanel)" y que en ella se cree un icono y el TreeNode en cuestión desaparezca del TreeView. Tengo mi propia clase TIcono a la que le agregue una propiedad en forma de TTreeNode. Desarrolle el arrastre y todo perfecto el problema viene que cuando apunto el TreeNode del Treeview al TreeNode del TIcono no tengo forma de desasociar el TreeNode del TreeView sin eliminarlo, ya que estaría liberando la zona de memoria y la propiedad TreeNode del TIcono quedaría también limpia. Espero que se me entienda después de la parrafada y si alguien tiene alguna idea será muy bien recibida. Muchas gracias a todos de ante mano. |
Cita:
No se me ocurre otra forma de solucionarlo.:o Un saludo. |
Cita:
He buscado hasta en la biblioteca del infierno y nada. La verdad es que estoy algo perdido. |
Bueno, sin ver código es difícil, pero supongo que en el Create de TIcono creas el objeto TTreeNode que tengas definido, en el Destroy de TIcono lo liberas.
Y para asignar los valores de uno a otro, simplemente asigna el valor de las propiedades que te interesen (no hacen falta todas). Supongo que el Text, ImageIndex,... y alguna más. |
Ok ahora te pillo mejor.
Perfecto, pero hay un problema añadido que se me olvidó comentar y es que de ese nodo pueden colgar más nodos hijos y aquí es cuando se me jode el invento. |
Cita:
Un poco más complejo, pero es lo que hay... |
La franja horaria es GMT +2. Ahora son las 03:09:19. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi