函数参考


_GUICtrlListBox_SelectString

搜索项目文本以指定字符串开始的项目

#include <GuiListBox.au3>
_GUICtrlListBox_SelectString($hWnd, $sText [, $iIndex = -1])

参数

$hWnd 控件的控件ID/句柄
$sText 搜索的字符串.
$iIndex [可选参数] 指定搜索开始的项目 0 基索引.
当搜索到达列表尾时,将返回顶部从新开始,继续到 $iIndex 指定位置为止.
如果 $iIndex 为 -1,则从列表开始位置搜索整个列表框.

返回值

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

注意/说明

 如果有必要,列表框将滚动匹配项,使其可见.
 不要对具有 $LBS_MULTIPLESEL 或 the $LBS_EXTENDEDSEL 样式的列表框使用该函数.

相关

_GUICtrlListBox_FindString, _GUICtrlListBox_FindInText

示例/演示


#include <GuiListBox.au3>
#include <GUIConstantsEx.au3>

$Debug_LB = False ;检查传递给 ListBox 函数的类名, 设置为True并输出到一个控件的句柄,用于检查它是否工作

_Main()

Func _Main()
    Local $sText, $hListBox

    ; 创建 GUI
    GUICreate("List Box Select String", 400, 296)
    $hListBox = GUICtrlCreateList("", 2, 2, 396, 296)
    GUISetState()

    ; 添加字符串
    _GUICtrlListBox_BeginUpdate($hListBox)
    For $iI = 1 To 10
        $sText = StringFormat("%03d : Random string ", Random(1, 100, 1))
        For $iX = 1 To Random(1, 20, 1)
            $sText &= Chr(Random(65, 90, 1))
        Next
        _GUICtrlListBox_AddString($hListBox, $sText)
    Next
    _GUICtrlListBox_AddString($hListBox, "020 : Target string")
    _GUICtrlListBox_EndUpdate($hListBox)

    ; Select string
    MsgBox(4160, "信息", "Target String Index: " & _GUICtrlListBox_SelectString($hListBox, "020 : T"));

    ; 循环直到用户退出
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
EndFunc   ;==>_Main