Ayuda!!!Problemas al borrar los elementos de una lista.

Cuestiones y dudas acerca de lenguajes de programación diversos.

Moderador: Moderadores

Avatar de Usuario
Nuria

Ayuda!!!Problemas al borrar los elementos de una lista.

Mensaje por Nuria » Mié May 14, 2003 9:27 pm

Tengo 2 listas. Al pulsar 1 boton escribo los elementos seleccionados de la primera lista en la segunda. Quiero borrar dichas entradas de la primera, pero me da un error debido a un error en el indice de la matriz.
Cómo puedo solucionarlo???
He utilizado el siguiente código:

Private Sub Image2_Click()
Dim i As Integer
For i = 0 To List1.ListCount - 1
If List1.Selected(i) = True Then
'Agrega lo que tiene seleccionado el List1
List2.AddItem List1.List(i)
'Borra la posición seleccionada
List1.RemoveItem (i)
End If
Next i
Image1.Enabled = False
End Sub

Avatar de Usuario
Invitado

Re: Ayuda!!!Problemas al borrar los elementos de una lista.

Mensaje por Invitado » Sab May 17, 2003 9:44 pm

si pones removeitem dentro del for, estás cambiando el límite del for, (list1.listcount-1), ya no es el mismo, quizás por eso te dé problema.
puedes intentar crear otro list3 y cuando quieras borrar el item, símplemente añádelo a este nuevo list3 y cuando termine el for, abre el list3 con un for para ir leyendo los valores guardado y quitándolos del list1. si no me entiendes escribeme a JCIFITZ @santandersupernet.com

saludos

José Carlos
Junior
Mensajes: 13
Registrado: Dom May 18, 2003 1:55 am
Contactar:

Ayuda!!!Problemas al borrar los elementos de un list

Mensaje por José Carlos » Dom May 18, 2003 6:47 pm

Cuando haces un removeitem desde dentro de un for cuyo límite es precisamente LIST.LISTCOUNT-1, al quitar un elemento estás modificando el tamaño del List, quizás sea ese el problema. Puedes solucionarlo creando otro LIST y colocar en él el índice del que quieres quitar, luego abres este último LIST y ve quitando del primero los datos almacenados.
Saludos

Responder