搜索指定特点的项目
#Include <GuiListView.au3>
_GUICtrlListView_FindItem($hWnd, $iStart, ByRef $tFindInfo[, $sText = ""])
$hWnd | 控件句柄 |
$iStart | 搜索开始的 0 基索引,或 -1, 从头开始. 指定索引项自身不包括在搜索范围内. |
$tFindInfo | 包含搜索信息的 $tagLVFINDINFO 结构 |
$sText | [可选参数] 与项目文本进行比较的字符串. 如果结构的 Flags 成员设置有 $LVFI_STRING 或 $LVFI_PARTIAL, 此参数有效. |
成功: | 返回项目的 0 基索引 |
失败: | 返回 -1 |
#include <GUIConstantsEx.au3>
#include <GuiListView.au3>
$Debug_LV = False ; 检查传递给 ListView 函数的类名, 设置为True并输出到一个控件的句柄,用于检查它是否工作
_Main()
Func _Main()
Local $tInfo, $iI, $hListView
GUICreate("ListView Find Item", 400, 300)
$hListView = GUICtrlCreateListView("", 2, 2, 394, 268)
GUISetState()
; 添加列
_GUICtrlListView_AddColumn($hListView, "Items", 100)
; 添加项目
_GUICtrlListView_BeginUpdate($hListView)
For $iI = 1 To 100
_GUICtrlListView_AddItem($hListView, "Item " & $iI)
Next
_GUICtrlListView_EndUpdate($hListView)
; Set item 50 parameter value
_GUICtrlListView_SetItemParam($hListView, 49, 1234)
; Search for target item
$tInfo = DllStructCreate($tagLVFINDINFO)
DllStructSetData($tInfo, "Flags", $LVFI_PARAM)
DllStructSetData($tInfo, "Param", 1234)
$iI = _GUICtrlListView_FindItem($hListView, -1, $tInfo)
MsgBox(4160, "信息", "Target Item Index: " & $iI)
_GUICtrlListView_EnsureVisible($hListView, $iI)
; 循环直到用户退出
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
EndFunc ;==>_Main