BUSCA NO LISTVIEW

USUARIO.EXCLUIDOS 26/08/2007 16:18:19
#232729
Pessoal boa tarde,

Preciso fazer uma busca dentro de um listview e quando achar o valor procurado selecionar a linha.

Alguém poderia me ajudar?

Obrigado.
USUARIO.EXCLUIDOS 26/08/2007 17:26:48
#232731
EXEMPLO ESTRAIDO DO HELP DO VB (MSDN)
' FindItem method.
'Create an integer variable called intSelectedOption
' to store the index of the selected button
' Create a string variable called strFindMe. Use the InputBox
' to store the string to be found in the variable. Use the
' FindItem method to find the string. Option1 is used to
' switch the FindItem argument that determines where to look.

Dim intSelectedOption as Integer
Dim strFindMe As String
If Option1(0).Value = True then
strFindMe = InputBox("Find in " & Option1(0).Caption)
intSelectedOption = lvwText
End If
If Option1(1).Value = True then
strFindMe = InputBox("Find in " & Option1(1).Caption)
intSelectedOption = lvwSubItem
End If
If Option1(2).Value = True then
strFindMe = InputBox("Find in " & Option1(2).Caption)
intSelectedOption = lvwTag
End If

' FindItem method returns a reference to the found item, so
' you must create an object variable and set the found item
' to it.
Dim itmFound As ListItem ' FoundItem variable.

Set itmFound = ListView1. _
FindItem(strFindMe, intSelectedOption, , lvwPartial)

' If no ListItem is found, then inform user and exit. If a
' ListItem is found, scroll the control using the EnsureVisible
' method, and select the ListItem.
If itmFound Is Nothing Then ' If no match, inform user and exit.
MsgBox "No match found"
Exit Sub
Else
itmFound.EnsureVisible ' Scroll ListView to show found ListItem.
itmFound.Selected = True ' Select the ListItem.
' Return focus to the control to see selection.
ListView1.SetFocus
End If

USUARIO.EXCLUIDOS 26/08/2007 17:30:32
#232732
RESUMINDO, EU USO ASSIM

[c]Private Sub Txt_Procura_Change()
On Error Resume Next

Dim itmFound As ListItem

If Lst_Contatos.Visible Then
Set itmFound = Lst_Contatos.FindItem(Txt_Procura, lvwText, , lvwPartial)
If itmFound Is Nothing Then
Exit Sub
Else
itmFound.EnsureVisible
itmFound.Selected = True
End If
End If
END SUB



USUARIO.EXCLUIDOS 26/08/2007 19:12:24
#232737
LVFIOROT

Muito obrigado ajudou muito era isso mesmo que estava querendo.

Tem como ao encontrar o valor a linha ficar selecionado?


USUARIO.EXCLUIDOS 26/08/2007 19:16:44
#232738
com esse codigo aqui ele seleciona a linha quando encontrado

  
[c]Private Sub Txt_Procura_Change()
On Error Resume Next

Dim itmFound As ListItem

If Lst_Contatos.Visible Then
Set itmFound = Lst_Contatos.FindItem(Txt_Procura, lvwText, , lvwPartial)
If itmFound Is Nothing Then
Exit Sub
Else
itmFound.EnsureVisible
'se o item for encontrado ele seleciona a linha
itmFound.Selected = True
End If
End If
END SUB

USUARIO.EXCLUIDOS 26/08/2007 19:21:56
#232739
LVFIOROT

Desculpe a a falta de tato, mais tem que fazer algo mais, pois fiz iqualzinho vc me passou, procura certinho mais não seleciona a linha.


USUARIO.EXCLUIDOS 26/08/2007 19:35:06
#232740
segue exemplo
USUARIO.EXCLUIDOS 26/08/2007 20:14:34
#232743
Brother,

Muito obrigado pela ajuda,

Era alguns itens na propriedade do listView
Tópico encerrado , respostas não são mais permitidas