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

autocompletar

Estas en el tema de autocompletar en el foro de Visual Basic clásico en Foros del Web. salu2 a la banda del foro que la verdad sin ustedes seria un ignorante de visual que ria ver quien me echabva la mano para ...
  #1 (permalink)  
Antiguo 29/11/2006, 13:32
 
Fecha de Ingreso: noviembre-2006
Mensajes: 9
Antigüedad: 17 años, 6 meses
Puntos: 0
Pregunta autocompletar

salu2 a la banda del foro que la verdad sin ustedes seria un ignorante de visual que ria ver quien me echabva la mano para ver como se hace un autocompletar en un textbox o un combobox que al teclear una letra me desplegara los registros que empiecen con esa letra que esten en la base de datos si alguien me puede echar la mano gracias ok banda bye
  #2 (permalink)  
Antiguo 29/11/2006, 17:20
 
Fecha de Ingreso: diciembre-2004
Mensajes: 129
Antigüedad: 19 años, 4 meses
Puntos: 0
xtexto = LCase(Combo.Text)
For i = 0 To Combo.ListCount - 1
If len(LCase(Combo.List(i)),1,len(xtexto)) = xtexto Then
CboDep.ListIndex = i
Exit For
End If
Next

En el evento keydown pones el codigo que trata de hacer lo siguiente :
toma la cantidad de letras que hayas introducido en el combo, luego las compara con cada uno de los item que tiene el combo, el que coincida con el lo deja.
  #3 (permalink)  
Antiguo 30/11/2006, 21:04
 
Fecha de Ingreso: noviembre-2006
Mensajes: 17
Antigüedad: 17 años, 5 meses
Puntos: 0
En el combo guardas la lista por orden alfabético.
Cuando haces click en el desplegar, aparece el primer elemento.
Si escribís cualquier letra, el comboBox te posiciona solo en el elemento que comience con la letra que ingresaste, y así a medida que ingresas letra tras letra.
Lo importante es DESPLEGAR la lista del combo haciendo click en la flechita...
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 17:48.