Borrar item de una lista
Hola.
Estoy haciendo un programa que tiene tres listas, una de archivos, otra de directorios y la última una lista tipo TListBox y a los lados tres botones: uno que agrega archivos, otro directorios y otro que elimina los archivos y directorios que he añadido con esos botones. Los he añadido asi: Lista.Items.Add(ListaArchivos.FileName); Bien, los controles de los botones de agregar los ten bien porque me agrega los ficheros y directorios perfectamente a la lista pero el problema viene cuando quiero eliminar un item de la lista TListBox. Debería de seleccionar un item y cuando haga click a eliminar que se elimine de la lista. He probado a hacerlo de múltiples formas pero no me hace nada, no me lo elimina. Ahora mismo lo tengo así pero tampoco me funciona: n:integer; begin for n:=0 to Lista.Items.Count-1 do begin ListaElegidos.Items.Delete(ListaElegidos.ItemIndex); Alguna sugerencia? Muchas gracias :) PD: Ya lo resolví utilizando Selected y un bucle WHILE en vez de FOR porque en el último elemento daba error :) |
Hola, está bien que lo hayas solucionado, pero el código que pusiste no tiene mucho sentido:
Aquí lo que estas haciendo es recorrer todos los ítems para nada, porqué después a la hora de borrar el ítem, utilizas el valor ItemIndex, que contiene el índice del ítem seleccionado. Saludos. |
Completando un poco más:
Si no tienes multiselect a true, bastaría con:
Si multiselect es true, siempre recorre los índices en orden descendente:
De memoria es así puede que tenga algún error. Saludos |
Efectivamente, el primer código que puse no tenía mucho sentido, pero es la primera vez que hago este tipo de cosas y estoy un poco perdida :o
Como lo tengo con Multiselect utilice un código parecido al último puesto, pero completándolo con más código para no añadir un item que ya esté en la lista. Muchas gracias por las respuestas :) |
La franja horaria es GMT +2. Ahora son las 07:44:03. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi