Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

ayuda con dos listas

Estas en el tema de ayuda con dos listas en el foro de Visual Basic clásico en Foros del Web. El caso es que cuando agrego nombres a la lista LIST2 y agregarlo a un archivo.TXT todo marcha muy bien pero necesito que cuando regrese ...
  #1 (permalink)  
Antiguo 04/06/2008, 14:28
 
Fecha de Ingreso: mayo-2008
Mensajes: 33
Antigüedad: 16 años
Puntos: 0
ayuda con dos listas

El caso es que cuando agrego nombres a la lista LIST2 y agregarlo a un archivo.TXT todo marcha muy bien pero necesito que cuando regrese algun otro momento al FORM y vuelva a agregar mas nombres esten ahi los nombres agregados anteriormente asi que hice otra lista llamada LIST3 como un respaldo para que se agregue a LIST2 pero al parecer mi problema son los INDEX.. como le puedo hacer ????

es este el codigo y desactive unas cosas porque estoy atorado en esto... ojo por favor ayudenme porfis..



Private Sub Command1_Click()

'List2.AddItem List3


List2.AddItem Text1.Text 'AGREGO A LA LISTA
'List3.AddItem Text1.Text
Text1.Text = "" 'LIMPIO TEXTBOX
List2.AddItem List2
'List3.AddItem List3

If List2.ListIndex = -1 Then Exit Sub
List2.RemoveItem List2.ListIndex

'If List3.ListIndex = -1 Then Exit Sub
'List3.RemoveItem List3.ListIndex

Call GuardarArchivo
End Sub

Private Sub GuardarArchivo()

Dim i As Integer 'AGREGO AL ARCHIVO NOMBRES1
Open "c:\malpica\nombres1.txt" For Output As #1
For i = 0 To List2.ListCount - 1
Print #1, List2.List(i)
Next i
Close #1

'Open "c:\malpica\nombres2.txt" For Output As #1 'AGREGO AL ARCHIVO NOMBRES2
'For i = 0 To List3.ListCount - 1
'Print #1, List3.List(i)
'Next i
'Close #1

End Sub

Private Sub Command2_Click() ' BOTON PARA ORDENAR ALFABETICAMENTE
List1.Clear
For x = 0 To (List2.ListCount - 1)
List1.AddItem List2.List(x)
Next
End Sub

Private Sub Command3_Click() ' BOTON PARA ELIMINAR VARIOS
List2.RemoveItem List2.MultiSelect - 1

End Sub

Private Sub Command4_Click() 'BOOTON PARA MODIFICAR
List2.RemoveItem List2.ListIndex
List2.AddItem Text2.Text

End Sub

Private Sub Command5_Click() ' BOTON PARA ELIMINAR UNO

List2.RemoveItem List2.ListIndex 'elimino de la lista2

Open "c:\malpica\nombres1.txt" For Output As #1 'elimino de archivo nombres1
For i = 0 To List2.ListCount - 1
Print #1, List2.List(i)
Next i
Close #1

List3.AddItem List2

'List3.RemoveItem List3.ListIndex 'elimino de la lista3
'Open "c:\malpica\nombres2.txt" For Output As #1 'elimino del archivo nombres2
'For i = 0 To List3.ListCount - 1
'Print #1, List3.List(i)
'Next i
'Close #1

End Sub

Private Sub Form_Load()

'Dim i As Integer
'Open "c:\malpica\nombres1.txt" For Output As #1
'For i = 0 To List3.ListCount - 1
'Print #1, List3.List(i)
'Next i
'Close #1
'List2.AddItem List3

End Sub
  #2 (permalink)  
Antiguo 04/06/2008, 14:41
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: ayuda con dos listas

Veo muchas cosas en el código que estás haciendo mal. No obstante, respondiendo a tu pregunta:
Código:
Private Sub Command1_Click()
List2.AddItem Text1.Text 'AGREGO A LA LISTA
Text1.Text = "" 'LIMPIO TEXTBOX
List2.AddItem List2
If List2.ListIndex = -1 Then Exit Sub
List2.RemoveItem List2.ListIndex
'If List3.ListIndex = -1 Then Exit Sub
'List3.RemoveItem List3.ListIndex
Call GuardarArchivo
End Sub
Estás saliendo del procedimiento sin guardar el archivo, la solución podría ser así:
Código:
 
Private Sub Command1_Click()
List2.AddItem Text1.Text 'AGREGO A LA LISTA
Text1.Text = "" 'LIMPIO TEXTBOX
List2.AddItem List2
If List2.ListIndex = -1 Then List2.RemoveItem List2.ListIndex
Call GuardarArchivo
End Sub
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 04/06/2008, 15:50
 
Fecha de Ingreso: mayo-2008
Mensajes: 33
Antigüedad: 16 años
Puntos: 0
Respuesta: ayuda con dos listas

Ok David...lo que pasa esque si pongo el codigo como me dices me marca error en que Falta el final de END IF ademas si elimino el lo de EXIT SUB empieza a insertar los nombres entre espacios y asi no se deja eliminar...

en fin amigo esta muy mal mi codigo..pero se AGRADECE SU AYUDA modificare todo de nuevo... GRACIAS
  #4 (permalink)  
Antiguo 04/06/2008, 15:52
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: ayuda con dos listas

Cita:
Iniciado por forrestgump Ver Mensaje
Ok David...lo que pasa esque si pongo el codigo como me dices me marca error en que Falta el final de END IF ademas si elimino el lo de EXIT SUB empieza a insertar los nombres entre espacios y asi no se deja eliminar...

en fin amigo esta muy mal mi codigo..pero se AGRADECE SU AYUDA modificare todo de nuevo... GRACIAS
Debes colocarlo en la misma línea como te puse:
Código:
If List2.ListIndex = -1 Then List2.RemoveItem List2.ListIndex
No debes colocar así (si lo haces te dirá que falta End If):
Código:
 
If List2.ListIndex = -1 Then
List2.RemoveItem List2.ListIndex
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 04/06/2008, 16:13
 
Fecha de Ingreso: mayo-2008
Mensajes: 33
Antigüedad: 16 años
Puntos: 0
De acuerdo Respuesta: ayuda con dos listas

Fenomenal !!! Its Working!!!!


Gracias David !!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:33.