Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Tiago_ftp

Localizar item em List Box

Recommended Posts

óla galera, eu sou novato nisto de programar. estou a tentar fazer um aplicatico em VB NET mas estou com algumas difuculdades, assim recorro a vossa ajuda.

 

 

Estou a tentar criar uma text box que localiza um item em uma listbox e com alguma pesquisa cheguei a este código:

 

CODE

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged

 

'Dar a posiçao na lista

 

Dim i As Integer = ListBox1.FindString(TextBox1.Text)

 

'Seleccionar o que é parecido

ListBox1.SelectedIndex = i

End Sub

 

mas ha um problema quando o eu digito o nome de algum item que não esta nessa listbox o aplicativo da erro e eu tenho de sair dele e tornar a abrir.

 

Alguem me podia dizer como eu crio um sistema de localizar itens em listbox.

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tiago_ftp,

 

Vejam esses exemplos não sei vai ajudá-lo:

 

Controles / ListBox

 

Achar uma palavra num ListBox

 

Public Const LB_FINDSTRING As Long = &H18F

Public Const LB_FINDSTRINGEXACT As Long = &H1A2

 

Public 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 Sub Text1_Change()

ListBox1.ListIndex = Sendmessage(ListBox1.hWnd, _

LB_FINDSTRING, -1, _

Byval Text1.Text)

End Sub

Private Sub cmdconsultar_Click()

On Error GoTo cmdconsultar ' Iniciar o tramento de erro

 

Dim LItem As ListItem

If busca_lista.Text = Empty Then

MsgBox "Digite o nome do fornecedor ?", vbCritical + vbExclamation, "Campo Obrigatório"

busca_lista.SetFocus

Exit Sub

End If

Set LItem = ListViewClientes.FindItem(busca_lista.Text, lvwText, , lvwPartial)

If LItem Is Nothing Then

Set LItem = ListViewClientes.FindItem(busca_lista.Text, lvwSubItem)

If LItem Is Nothing Then

NotFound = True

End If

End If

If NotFound Then

MsgBox " Fornecedor não encontrado ?", vbCritical + vbExclamation, "Fornecedor"

Exit Sub

Else

LItem.EnsureVisible

LItem.Selected = True

ListViewClientes.SetFocus

 

End If

cmdconsultar_exit:

gUltHora = Now

Exit Sub

cmdconsultar:

MsgBox Err.Description, vbExclamation, "Erro em [cmdconsultar]"

End Sub

ListView1.FindItem "João", lvwText, -1, lvwPartial

 

Private Sub ListView1_Click()

 

Dim ItemEncontrado As ListItem, Texto As String

 

If Not ListView1.ListItems.Count = 0 Then

 

If Not ListView1.SelectedItem Is Nothing Then Texto = ListView1.SelectedItem.Text

 

If Not Texto = "" Then

 

Set ItemEncontrado = ListView2.FindItem(Texto, lvwText, , lvwPartial)

 

If Not (ItemEncontrado Is Nothing) Then

 

Indice = ItemEncontrado.Index

 

With ListView2

.ListItems(Indice).EnsureVisible

.ListItems(Indice).Selected = True

.SetFocus

End With

 

End If

 

End If

 

End If

 

End Sub

 

Um abraço.

 

 

Alissong

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.