SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: Javochin en Jueves 6 de Octubre de 2005, 00:55

Título: No Repetir Items En Un Listbox
Publicado por: Javochin en Jueves 6 de Octubre de 2005, 00:55
Hola a todos:

El Codigo qeu he hecho es el siguiente:

Código: Text
  1. Tramite As String
  2. Agregado as Boolean
  3. GridTab2=DBGrid
  4. LstTramites=ListBox
  5.  
  6.  
  7. Tramite = GridTab2.Columns(0).Text
  8. For i = -1 To LstTramites.ListCount    
  9.        If Tramite = LstTramites.Text Then
  10.              Agregado = False    
  11.        Else        
  12.              Agregado = True
  13.        End If
  14. Next i
  15.  
  16. If Agregado = True Then    
  17.         LstTramites.AddItem TramiteElse    
  18.         MsgBox "El Trámite ya fué agregado", vbInformation
  19. End If
  20.  


Espero su Colaboración
Título: Re: No Repetir Items En Un Listbox
Publicado por: cpmario en Viernes 7 de Octubre de 2005, 20:21
Usa este listado
Código: Text
  1.     Agregado = True
  2.     For i = 0 To LstTramites.ListCount
  3.         If Tramite = LstTramites.List(i) Then
  4.             Agregado = False
  5.         End If
  6.     Next i
  7.  
  8.     If Agregado = True Then
  9.        LstTramites.AddItem Tramite
  10.     Else
  11.        MsgBox "El Trámite ya fué agregado", vbInformation
  12.     End If
  13.  
  14.  
:)
Título: Re: No Repetir Items En Un Listbox
Publicado por: Alpha_ en Viernes 7 de Octubre de 2005, 20:30
Tal cual, el problema estaba en que en cada iteración estabas cambiando el valor de Agregado.

En cambio, con el código que te dio cpmario, lo cambia solo en el caso en que lo encontrara.

Saludos.
Título: Re: No Repetir Items En Un Listbox
Publicado por: Javochin en Lunes 10 de Octubre de 2005, 19:58
Gracias CpMario, tu codigo me sirvió a la perfección.

No soy nuevo en el mundo de la programación, pero se me olvido como hacer un ciclo de busquedas. ;)


Mil Gracias :)