|
|
|
|
|
Dicas
|
|
Visual Basic (Miscelâneas)
|
|
|
Título da Dica: Digitar em um TextBox e ir selecionandu em um ListBox
|
|
|
|
Postada em 2/9/2004 por [_Chuck_]
coloque essa função...
'Em um módulo Public Function Busca(Lista As ListBox, Caixa As TextBox) As Integer Dim MidIndex As Integer Dim MinIndex As Integer Dim MaxIndex As Integer MinIndex = 0 MaxIndex = Lista.ListCount - 1 S$ = Trim(Caixa.Text) While 1 MidIndex = (MinIndex + MaxIndex) / 2 If MaxIndex < MinIndex Then Busca = -1 Exit Function End If If StrComp(S$, Left$(Lista.List(MidIndex), Len(S$)), 1) > 0 Then MinIndex = MidIndex + 1 ElseIf StrComp(S$, Left$(Lista.List(MidIndex), Len(S$)), 1) < 0 Then MaxIndex = MidIndex - 1 Else Lista.ListIndex = MidIndex Busca = MidIndex Exit Function End If Wend End Function
'No seu Form 'ai coloca o seguinte código... Private Sub Text1_Change() Dim ItemIndex As Integer If Trim(Text1.Text) = "" Then List1.ListIndex = 0: Exit Sub ItemIndex = Busca(List1, Text1) If ItemIndex = -1 Then Beep Else List1.ListIndex = ItemIndex End If End Sub
ai a cada caracter que você for digitandu na caixa(text1) vai selecionandu na lista(List1).. senaum tiver nenhum item parecido vai dar um Beep...
Obs: Acrescente alguns dados no seu List para fazer o teste....
Maycon Maia Vitali [_Chuck_]
|
|
|
|
|