FoxPro/Visual FoxPro - Autobuscar en Combo1

 
Vista:
sin imagen de perfil

Autobuscar en Combo1

Publicado por Amado Garcia (68 intervenciones) el 14/10/2008 19:37:30
Hola... buenas tardes tengan todos ustedes...
Tengo una pequeña duda.. saben..
Tengo un Combo1, en boton derecho Builder selecciono una Tabla pera seleccionar un campo "nomedo" estados de la republica... ordenados de la A -> Z.. al dar click en el botoncito de la derecha se despliegan los nombres de estados... Entrar para seleccionar un estado... verdad...'??... lo que yo quiero hacer es que me aparezca el primer estado en el combo... y a medida que se ponga una letra me presente los estados que inicien por dicha letra.... ejemplo:

Chihuahua
Chiapas
Coahuilla
F****
Guanajuato
Guerrero...
H***
Etc.. etc.

si en el evento init tengo lo siguiente:
Thisform.Combo1.DisplayValue='Seleccione el Estado...'

al escribir dentro del campo del combo1 se ejecute un autocompletar...

saludos
Amado Garcia Lara.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Autobuscar en Combo1

Publicado por HELDER (COUNDY) (711 intervenciones) el 14/10/2008 20:44:10
*Esto me lo paso un amigo de aqui;
*puedes usar este codgio en el combo, en el metodo interactiveChange

PUBLIC lnUltimaTecla, lcMostrarValor, lcUltimoValorMostrado,;
lnUltimaSeleccion, lnSeleccionados

SELECT Tu_tabla
lnUltimaTecla = LASTKEY()
lcUltimoValorMostrado = ""
lnUltimaSeleccion = 0
lnSeleccionados = 0

IF (lnUltimaTecla >= 32 AND lnUltimaTecla <= 126)
IF THIS.SELSTART >= 1
lcMostrarValor = SUBSTR(THIS.DISPLAYVALUE,1,THIS.SELSTART-1)+(CHR(lnUltimaTecla))
ELSE
lcMostrarValor = (CHR(lnUltimaTecla))+ALLT(THIS.DISPLAYVALUE)
ENDIF
IF EMPTY(lcMostrarValor)
lcMostrarValor = ALLT(CHR(lnUltimaTecla))
ENDIF
FOR i = 1 TO THIS.LISTCOUNT
IF UPPER(lcMostrarValor) = UPPER(SUBSTR(THIS.LIST(i),1,LEN(lcMostrarValor)))
THIS.DISPLAYVALUE = THIS.LIST(i)
IF LEN(ALLT(THIS.DISPLAYVALUE)) > LEN(lcMostrarValor)
THIS.SELSTART = LEN(lcMostrarValor)
THIS.SELLENGTH = LEN(ALLT(THIS.DISPLAYVALUE))-LEN(lcMostrarValor)
ENDIF

lcUltimoValorMostrado = THIS.DISPLAYVALUE
lnUltimaSeleccion = THIS.SELSTART
lnSeleccionados = THIS.SELLENGTH
RETURN
ENDIF
ENDFOR

THIS.DISPLAYVALUE = lcUltimoValorMostrado
THIS.SELSTART = lnUltimaSeleccion
THIS.SELLENGTH = lnSeleccionados
ENDIF
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Autobuscar en Combo1

Publicado por Amado (68 intervenciones) el 14/10/2008 21:13:20
Hola...ya lo puse en el combo.. y funciono de muy bien....
Muchas gracias amigo...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Autobuscar en Combo1

Publicado por HELDER (COUNDY) (711 intervenciones) el 14/10/2008 22:28:03
De nada amigo, me lo envio un amigo de aqui,

Saludes desde Honduras, dale..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar