Vamos começar um novo projeto "Standard.EXE". No Form, inserimos uma ListBox com a propriedade Name=lstcapitais
Criamos um procedimento capitais.
No evento Form_Load() , fazemos o Call capitais, para adicionar os respectivos itme's á ListBox.
Criamos um Modulo .Bas, ao qual adicionamos uma função API, chamada SendMessage, e uma variável constante LB_FINDSTRING com valor inicial em hexadecimal 399.
Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Public Const LB_FINDSTRING = &H18F
Private Sub capitais() With lstcapitais .AddItem "São Paulo" .AddItem "Rio de Janeiro" .AddItem "Salvador" .AddItem "Manaus" .AddItem "Belo Horizonte" .AddItem "Curitiba" End With End Sub
Adicionamos um objeto CommandButton com a propriedade Name=cmdProcura e Caption=Procurar, ao qual adicionamos o seguinte código ao evento Click:
Private Sub cmdProcura_Click() Dim strSearch As String Dim intPos As Integer strSearch = InputBox$("Digite a String:", "Procurar") With lstStates If strSearch = "" Then .ListIndex = 0 Else intPos = SendMessage(.hwnd, _ LB_FINDSTRING, _ -1, _ ByVal strSearch) If intPos >= 0 Then .ListIndex = intPos End If End If End With End Sub
Clicando no botão procurar, digitamos a String, que pretendemos e será assinalada a string igual ou maior ao que digitamos.
Espero que tenham gostado.
Flwos...