在VB 6.0的ListView控件中进行搜索
编号:QA004614
建立日期: 2002年4月20日 最后修改日期:2002年4月20日
所属类别:
文章:
李海译自《VBTips》
你可能经常需要将数据库中数据或者很长的信息列表填充到ListView中。这时,你可能需要让用户输入片段文字,然后在列表中进行搜索。 幸运的是,控件的FindItem方法可以让你这么做。
这个方法包括4个参数: string、value、index、match。参数string包含你要搜索的字符串;而参数value(在智能提示中为'where')告诉VB在哪里搜索指定的字符串--在Text (lvwText)、subitems (lvwSubItem)或Tag (lvwTag)属性中。 参数index表示VB从哪个条目开始进行搜索,而参数match告诉VB是否搜索整个字符串(lvwWholeWord)或部分匹配(lvwPartial)。参数string是唯一必须的参数。
为了演示如何使用ListView的这个方法,我们建立严格快速搜索的窗体,你可以输入一些文字,然后点击一个按钮来执行搜索工作。建立一个标准的VB工程。从菜单中选择“Project | Components”,然后在对话框中选择Microsoft Windows Common Controls 6.0。点击OK按钮添加这些控件到你的工程。从工具箱中选择ListView控件并且在默认窗体上绘制一个控件的实例。添加文本框和命令按钮到窗体。
这时,我们可以添加代码进行搜索。右击窗体并且从快捷菜单中选择“查看代码”。当VB打开代码窗口,输入如下代码:
Private Sub Form_Load()
With ListView1
.ListItems.Add Key:="k1", Text:="Fred"
.ListItems.Add Key:="k2", Text:="Barney"
.ListItems.Add Key:="k3", Text:="Wilma"
.ListItems.Add Key:="k4", Text:="Betty"
.ListItems.Add Key:="k5", Text:="Pebbles"
.ListItems.Add Key:="k6", Text:="Bam Bam"
End With
End Sub
Private Sub Command1_Click()
Dim itm As ListItem
With ListView1
Set itm = .FindItem(Text1.Text, lvwText, , lvwPartial)
If Not itm Is Nothing Then
.ListItems(itm.Index).Selected = True
.SetFocus
End If
End With
Set itm = Nothing
End Sub
按[F5]开始测试工程。在文本框中输入'Pe' (不包括引号),然后点击命令按钮。当你这么做,VB在ListView选择"Pebbles"项。
文章来源:VBTips。
| |
|
|
| |
|
|