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

leyendo un combobox

Estas en el tema de leyendo un combobox en el foro de Visual Basic clásico en Foros del Web. Saludos gente, mi duda es la siguiente. Tengo una tabla la cual tiene un campo direccion. el cliente puede tener una direccion o varias direcciones, ...
  #1 (permalink)  
Antiguo 31/01/2007, 15:24
 
Fecha de Ingreso: mayo-2003
Ubicación: Lima
Mensajes: 967
Antigüedad: 21 años
Puntos: 8
leyendo un combobox

Saludos gente, mi duda es la siguiente.

Tengo una tabla la cual tiene un campo direccion. el cliente puede tener una direccion o varias direcciones, de tener una direccion no hay problema, si es que tiene mas de una direccion entonces las direcciones se van guardando en un combo box, luego para guardarlo a la tabla me valgo de una variable, aqui les pongo mi codigo para que lo vean.

Código:
Dim Direc As String
If cmbDirecciones.ListCount = 0 Then
   Direc = txtDireccion
Else
   Dim i As Integer
   For i = 0 To i <= cmbDirecciones.ListCount - 1
       If Direc = "" Then
           Direc = cmbDirecciones.List(i)
       Else
           Direc = Direc & "/" & cmbDirecciones.List(i)
       End If
   Next
End If
Como ven ahi la direccion o las direcciones se guardan en la variable Direc, cuando es una sola direccion no hay problema, pero cuando hay varias direcciones el valor final de la variable Direc es Vacio.

Si alguien puede ayudarme se lo agradezco mucho desde ya
__________________
El aprendiz.
  #2 (permalink)  
Antiguo 01/02/2007, 04:48
 
Fecha de Ingreso: noviembre-2004
Ubicación: Corrientes, Arg.
Mensajes: 129
Antigüedad: 19 años, 5 meses
Puntos: 0
Re: leyendo un combobox

Con esta instrucción:
For i = 0 To i <= cmbDirecciones.ListCount - 1
... le estás ordenando que ejecute el For desde 0 hasta el resultado de la comparación "i <= cmbDirecciones.ListCount - 1", que es True o False, pero numéricamente eso equivale a -1 ó 0 respectivamente. O sea que si el resultado es False (0) se ejecuta el contenido del For una vez. Pero si es True (-1) no se ejecuta nunca.
En VB tienes que organizar estas instrucciones así:

Dim i As Integer
Dim n As Integer
n = cmbDirecciones.ListCount - 1
For i = 0 To n
If Direc = "" Then
Direc = cmbDirecciones.List(i)
Else
Direc = Direc & "/" & cmbDirecciones.List(i)
End If
Next

Saludos
  #3 (permalink)  
Antiguo 01/02/2007, 11:40
 
Fecha de Ingreso: mayo-2003
Ubicación: Lima
Mensajes: 967
Antigüedad: 21 años
Puntos: 8
Re: leyendo un combobox

Tienes toda la razon, el error mi estivo en lo que va despues del To incluso esto es valido
Código:
For i = 0 To cmbCirecciones.ListCount - 1
      etc...
Next
__________________
El aprendiz.
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 22:08.