搜索包含指定文本的项目
#include <GuiListBox.au3>
_GUICtrlListBox_FindInText($hWnd, $sText [, $iStart = -1 [, $fWrapOK = True]])
$hWnd | 控件的控件ID/句柄 |
$sText | 匹配文本 |
$iStart | [可选参数] 搜索开始的 0 基索引,或 -1, 从头开始. 指定索引项自身不包括在搜索范围内. |
$fWrapOK | [可选参数] 如为 True, 则没有找到匹配项时,从第一项继续搜索 |
成功: | 返回项目的 0 基索引 |
失败: | 返回 -1 |
#include <GuiListBox.au3>
#include <GUIConstantsEx.au3>
$Debug_LB = False ;检查传递给 ListBox 函数的类名, 设置为True并输出到一个控件的句柄,用于检查它是否工作
_Main()
Func _Main()
Local $iIndex, $hListBox
; 创建 GUI
GUICreate("List Box Find In Text", 400, 296)
$hListBox = GUICtrlCreateList("", 2, 2, 396, 296)
GUISetState()
; 添加字符串
_GUICtrlListBox_BeginUpdate($hListBox)
For $iI = 1 To 9
_GUICtrlListBox_AddString($hListBox, StringFormat("%03d : Random string", Random(1, 100, 1)))
Next
_GUICtrlListBox_InsertString($hListBox, "eXaCt tExT", 3)
_GUICtrlListBox_EndUpdate($hListBox)
; Find an item
$iIndex = _GUICtrlListBox_FindInText($hListBox, "exa")
_GUICtrlListBox_SetCurSel($hListBox, $iIndex)
; 循环直到用户退出
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
EndFunc ;==>_Main