busqueda progresiva

felipe_M
25 de Noviembre del 2003
Necesito realizar una busqueda progresiva desde un text.
lo que quiero es especificamente que cuando escriba una letra en el text,
en seguida me actualice una lista de todos los temas que inicien con esa letra.... como los temas de ayuda.

Asaa
25 de Noviembre del 2003
El evento keypress es el que necesitas para recoger la tecla que te han pulsado, dentro de este evento vas concatenando las teclas en una variable local, por lo que ya lo tienes en una cadena y pasas este cadena a la rutina que te busca, si es una orden SQL para una base de dato una la orden LIKE.

Espero haberte ayudado.

Maria
25 de Noviembre del 2003
Te envío una posibilidad que me enviaron para ir autocompletando un combo, no se si te sirva.
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Const CB_SHOWDROPDOWN = &H14F
Private Const CB_GETDROPPEDSTATE = &H157
Private Const CB_FINDSTRING = &H14C



Private Sub Combo1_Change()
Dim lenOldText As String
lenOldText = Len(Combo1.Text)
Combo1.ListIndex = SendMessage(Combo1.hwnd, CB_FINDSTRING, -1, ByVal Combo1.Text)
Combo1.SelStart = lenOldText
Combo1.SelLength = Len(Combo1.Text)
End Sub

Private Sub Combo1_KeyPress(KeyAscii As Integer)
If KeyAscii <> 13 Then
If SendMessage(Combo1.hwnd, CB_GETDROPPEDSTATE, 0, 0) = False Then
SendMessage Combo1.hwnd, CB_SHOWDROPDOWN, True, 0
Combo1.Text = ""
End If
If KeyAscii = 8 Then Combo1.Text = ""
End If
End Sub