![]() |
Borrar varios elementos de un TreeView
Hola a todos tengo el siguiente problema:
Tengo dos treeview y 2 botones, lo que me hace falta hacer es seleccionar un hijo del treview1 y que cuando doy al boton se pasen para el treview2, para 1 solo elementos todo muy feliz, pero si me seleccionan mas de uno por ejemplo 2 elementos me da que se va de rango. Aqui esta todo el codigo el error ocurre a partir de que borro los elementos del treeview1, si no lo borro me los copia bien y todo pero si no me da error de rango o me borra el que no es. Saludos |
Hola annieruci, prueba de esta forma:
No necesitas recorrer todo el treview para encontrar los seleccionados. Saluditos |
nada
ya habia probado esa solucion pero no me resulta, hay algun problema en el oreden en que selecciono los elementos, si los selecciono de arriba hacia abajo y el for esta invertido me da error, si selecciono dos consecutivos me da error, hay pasa algo extraño que me gustaria saber que es.
|
una posible solucion seria cambiarle el padre al treenode seleccionado
alguien sabe como hacerlo??? |
Hola de nuevo, ¿que error te da? debes comenzar a eliminar desde el ultimo que has seleccionado, para que no te de error de indices que no existen porque ya se ha eliminado.
El problema que veo en el codigo que he puesto, es esta linea:
se debe cambiar por esta:
ademas de controlar cuando se quiere borrar un item que tiene subitems. Saluditos |
Gracias por dedicarme un tiempo pero si cambio esa linea me da este error
y no hace nada no mueve ni uno aunque sea: List index out of bounds(1). |
Cita:
Saluditos |
actualmente lo he probado todo, ya no se que mas me probar,
me mueve el primer elemento siempre, solo el primero aunque marque el 4 me mueve el 1.
este es el codigo que estoy probando pero repito que cuando marco dos consecutivos me da el error parece que al borrar una posicion se marea, estoy usando delphi 6 y conexion a Oracle, son dos treeview y un boton que mueve los datos de un lado a otro solo eso, Saludos |
1 Archivos Adjunto(s)
En el primer codigo, no has cambiado la linea que te dije, por eso siempre se copia el primero. Te adjunto un ejemplo.
Si tienes dudas pregunta. Saluditos |
No te olvides utilizar etiquetas [ delphi] tu codigo [ /delphi] (sin el espacio), para que se vea mejor tu codigo o también lo puedes hacer desde el mismo editor.
Saluditos |
Gracias por la ayuda, ya con ese ejemplo que has mandado lo entendi todo, y lo mejor de todo es que no me da ningun error, gracias por la yuda y disculpa las molestias.
Saludos y Gracias |
La franja horaria es GMT +2. Ahora son las 09:22:51. |
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