Ver Mensaje Individual
  #5 (permalink)  
Antiguo 21/12/2006, 13:04
Avatar de jabi
jabi
 
Fecha de Ingreso: noviembre-2006
Mensajes: 120
Antigüedad: 18 años
Puntos: 1
Re: como lo soluciono?¿

Lo he probado con Visual Net 2003 y me ha funcionado, éste código podría ir dentro del evento Click de un botón, por ejemplo.

Código:
 
Dim i As Integer
Dim j As Integer
Dim existe As Boolean = False

For i = 0 To Me.ListBox1.Items.Count - 1     '<--- Elementos del Listbox1

      existe = False
      For j = 0 To Me.ListBox2.Items.Count - 1     '<--- Elementos del Listbox2
                
            'COMPARACIÓN:
            If Me.ListBox2.Items(j) = Me.ListBox1.Items(i) Then
                  existe = True
            End If
      Next

      'Si NO ESTÁ EN Listbox2, LO COPIO A Listbox3
      If existe = False Then
            Me.ListBox3.Items.Add(Me.ListBox1.Items(i))
      End If

Next
Para que el código fuera más "rápido" (con tan pocos números es indiferente), lo suyo sería poner una condición en el for más interno para que se saliera de él una vez que existe pasara a ser True, sin necesidad de mirar el resto de números, pero ahora mismo no caigo en cómo poner otra condición en el for o incluso si ésto se puede hacer en Visual (en C siempre lo he hecho y por eso supongo que aquí también se puede)... Aprovecho para decir que si alguien lo sabe que me saque de dudas

Espero te sirva, un saludo!