Mostrar palabras coincidentes en un listbox al escribir una letra,lo intenté con interactive change

Hola experto necesito ayuda en una busqueda lo que yo quiero es que cuando escriba alguna letra en un textbox imediatamente se vallan mostrando las coincedencias en un listbox o sea sin necesidad de escribir toda la palabra lo intente hacer con el evento interactivechange del textbox pero no me funciono si me pudieras facilitar un ejemplo t lo agradeceria mucho mi correo es (xxxxxx) de antemano muchas grasias

1 Respuesta

Respuesta
1
Te prepare este ejemplo para que puedas usar como guia. Es lo basico
PUBLIC oform1
oform1=NEWOBJECT("form1")
oform1.Show
RETURN
**************************************************
*-- Form: form1 (c:\util\vfp\todoexpertos\buscador.scx)
*-- ParentClass: form
*-- BaseClass: form
*
DEFINE CLASS form1 AS form
Top = 81
Left = 162
Height = 499
Width = 814
DoCreate = .T.
Caption = "Form1"
Name = "Form1"
ADD OBJECT text1 AS textbox WITH ;
Height = 23, ;
Left = 36, ;
Top = 36, ;
Width = 708, ;
Name = "Text1"
ADD OBJECT list1 AS listbox WITH ;
Height = 384, ;
Left = 36, ;
Top = 72, ;
Width = 708, ;
Name = "List1"
PROCEDURE text1.InteractiveChange
ThisForm.List1.rowsourcetype = 0
select * from nombres where atc(allt(this.value),nombre)>0 into cursor busqueda
ThisForm.List1.rowsourcetype = 2
ThisForm.List1.rowsource = 'busqueda'
ENDPROC
PROCEDURE list1.Init
create cursor nombres(nombre C(50))
sele nombres
append blank
replace nombre with 'Jose lopez'
append blank
replace nombre with 'Juan Perez'
append blank
replace nombre with 'Pedro Diaz'
append blank
replace nombre with 'Jose Saturnino Cardozo'
append blank
replace nombre with 'Deniz Caniza'
append blank
replace nombre with 'Carlos Humberto Paredez'
append blank
replace nombre with 'Pedro Lima'
this.rowsourcetype = 2
this.rowsource = 'nombres'
ENDPROC
ENDDEFINE
*
*-- EndDefine: form1
**************************************************

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas