Страница: 1 |
Страница: 1 |
Вопрос: Помогите с поиском текста в ListView
Добавлено: 31.10.05 20:51
Автор вопроса: Георгич
Есть такая проблемка.... Есть форма с Text1, мне надо, чтобы когда я в нее ввел слово или часть слова и ткнул на копку поиск, то в ListView подсветилась бы найденная тема. По сути я не знаю как реальзовать поиск части слова....Ну например, если у меня в ListView написано Dungeon Siege 2, а я ввожу Dungeon, то прога должна подсветить эту запись!
Помогите, плиз!!!
Ответы
Всего ответов: 8
Номер ответа: 1
Автор ответа:
Morpheus
Вопросов: 224
Ответов: 3777
Web-сайт:
Профиль | | #1
Добавлено: 31.10.05 21:27
http://www.vbnet.ru/faq/showtopic.asp?id=276 - может сгодится
Номер ответа: 2
Автор ответа:
Morpheus
Вопросов: 224
Ответов: 3777
Web-сайт:
Профиль | | #2
Добавлено: 31.10.05 21:29
зы:поиск по подстроке :
Const t As String = "VBnet Forum !!!!"
Private Sub Command1_Click()
If t Like "*Forum*" Then
MsgBox "True"
Else
MsgBox "False"
End If
'true
End Sub
Номер ответа: 3
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #3
Добавлено: 01.11.05 00:18
inStr
Номер ответа: 4
Автор ответа:
Георгич
Вопросов: 5
Ответов: 3
Профиль | | #4
Добавлено: 01.11.05 17:55
Dim i As Integer
If Text1 = Empty Then
MsgBox "Ââåäèòå ñòðîêó äëÿ ïîèñêà", vbOKOnly + vbInformation, "Âíèìàíèå!"
Else
If Option1.Value = True Then
For i = 1 To Form1.ListView1.ListItems.Count
If InStr(1, Form1.ListView1.ListItems.Item(i), Text1, 3) > 0 Then
Form1.ListView1.ListItems.Item(i).Selected = True
End If
Next i
Me.Hide
Text1 = Empty
Else
For i = 1 To Form1.ListView1.ListItems.Count
If Text1.Text = Form1.ListView1.ListItems.Item(i) Then
Form1.ListView1.ListItems.Item(i).Selected = True
End If
Next i
Me.Hide
Text1 = Empty
End If
End If
End Sub
У меня поиск реализован вот так.... Но есть небольшая проблеммка: Если в ListView много записей и есть полоса прокрутки и я нахожу запись, которая в конце списка, то мне надо, чтобы прога сама прокрутила ползунок ло найденной записи. Как это сделать????
СПАСИБО!
Номер ответа: 5
Автор ответа:
Neco
ICQ: 247906854
Вопросов: 133
Ответов: 882
Web-сайт:
Профиль | | #5
Добавлено: 02.11.05 04:06
У списка есть свойство TopIndex
Номер ответа: 6
Автор ответа:
Sur
ICQ: 1249088
Вопросов: 10
Ответов: 304
Web-сайт:
Профиль | | #6
Добавлено: 02.11.05 18:23
В listview это называется ListView1.SelectedItem.EnsureVisible
Номер ответа: 7
Автор ответа:
Георгич
Вопросов: 5
Ответов: 3
Профиль | | #7
Добавлено: 03.11.05 14:13
2 Sur
Извини, и куда мне в код надо вставить эту строку?
Номер ответа: 8
Автор ответа:
Sur
ICQ: 1249088
Вопросов: 10
Ответов: 304
Web-сайт:
Профиль | | #8
Добавлено: 03.11.05 18:09
после Selected = True, наверно.
Я по другому селект делаю:
Set LV.SelectedItem = LV.ListItems(i)
LV.SelectedItem.EnsureVisible