函数参考


_GUICtrlListView_FindItem

搜索指定特点的项目

#Include <GuiListView.au3>
_GUICtrlListView_FindItem($hWnd, $iStart, ByRef $tFindInfo[, $sText = ""])

参数

$hWnd 控件句柄
$iStart 搜索开始的 0 基索引,或 -1, 从头开始.
指定索引项自身不包括在搜索范围内.
$tFindInfo 包含搜索信息的 $tagLVFINDINFO 结构
$sText [可选参数] 与项目文本进行比较的字符串.
如果结构的 Flags 成员设置有 $LVFI_STRING 或 $LVFI_PARTIAL, 此参数有效.

返回值

成功: 返回项目的 0 基索引
失败: 返回 -1

注意/说明

None.

相关

_GUICtrlListView_FindParam, _GUICtrlListView_FindNearest, $tagLVFINDINFO

示例/演示


#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