Foros del Web » Programación para mayores de 30 ;) » .NET »

como lo soluciono?¿

Estas en el tema de como lo soluciono?¿ en el foro de .NET en Foros del Web. amigos tengo un listbox con 10 numeros del 1 al 10 y otro con 3 numeros del 1 al 3. lo que quiero es pasar ...
  #1 (permalink)  
Antiguo 20/12/2006, 22:36
 
Fecha de Ingreso: agosto-2006
Ubicación: en lima peru
Mensajes: 184
Antigüedad: 17 años, 8 meses
Puntos: 0
como lo soluciono?¿

amigos tengo un listbox con 10 numeros del 1 al 10 y otro con 3 numeros del 1 al 3.

lo que quiero es pasar aquellos items que no se repiten en un tercer listbox

algo asi:



1 1 4
2 2 5
3 3 6
4 7
5 8
6 9
7 10
8
9


Gracias de antemano
  #2 (permalink)  
Antiguo 20/12/2006, 22:38
 
Fecha de Ingreso: agosto-2006
Ubicación: en lima peru
Mensajes: 184
Antigüedad: 17 años, 8 meses
Puntos: 0
Re: como lo soluciono?¿

es asi


primer listbox

1
2
3
4
5
6
7
8
9
10

segundo listbox
1
2
3


tercer listbox con los resultados

4
5
6
7
8
9
10
  #3 (permalink)  
Antiguo 21/12/2006, 10:51
Avatar de jabi  
Fecha de Ingreso: noviembre-2006
Mensajes: 120
Antigüedad: 17 años, 6 meses
Puntos: 1
Re: como lo soluciono?¿

Podrías ir comparando cada elemento del segundo listbox con todos los items del primero, y mediante una bandera puedes indicar si está también en el primero. Si después de la comparación estaba, lo pasas al tercero con la propiedad Add y creo que no habría problema.

Todo ésto con un bucle for anidado en otro, si no te aclaras coméntalo y te pongo la posible solución :)
  #4 (permalink)  
Antiguo 21/12/2006, 11:09
 
Fecha de Ingreso: agosto-2006
Ubicación: en lima peru
Mensajes: 184
Antigüedad: 17 años, 8 meses
Puntos: 0
Tienes un código

tienes el código para que me ayudes. Gracias
  #5 (permalink)  
Antiguo 21/12/2006, 13:04
Avatar de jabi  
Fecha de Ingreso: noviembre-2006
Mensajes: 120
Antigüedad: 17 años, 6 meses
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!
  #6 (permalink)  
Antiguo 24/12/2006, 16:47
 
Fecha de Ingreso: agosto-2006
Ubicación: en lima peru
Mensajes: 184
Antigüedad: 17 años, 8 meses
Puntos: 0
Gracias

Gracias el problema se soluciono
aqui te envio el software que estoy desarrollando

http://es.geocities.com/romanticoperu2002/SisCiber.zip
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 07:15.