_GUICtrlListView_FindText
Поиск пункта с указанным текстом
#include <GuiListView.au3>
_GUICtrlListView_FindText($hWnd, $sText [, $iStart = -1 [, $fPartialOK = True [, $fWrapOK = True]]])
Параметры
$hWnd | Дескриптор или идентификатор элемента |
$sText |
Искомый текст |
$iStart |
[необязательный] Индекс, от которого начинать поиск или -1, чтобы искать с самого начала. Указанный элемент исключается из поиска. |
$fPartialOK |
[необязательный] Частичное совпадение True - совпадением будет считаться, если начало текста пункта соответствует искомому False - будет считаться только полное совпадение пункта с искомым текстом |
$fWrapOK |
[необязательный] Если True, то поиск продолжится от первого пункта, если ни одного соответствия не найдено |
Возвращаемое значение
Успех: | Возвращает индекс пункта |
Ошибка: | Возвращает -1 |
Примечания
Поиск без учёта регистра. Поиск выполняется только по пунктам. Используйте _GUICtrlListView_FindInText, если вы хотите найти текст в подпунктах.См. также
_GUICtrlListView_FindInTextПример
#include <GUIConstantsEx.au3>
#include <GuiListView.au3>
; Создание GUI
GUICreate("Поиск пункта в ListView по тексту", 400, 300)
$iListView = GUICtrlCreateListView("", 2, 2, 394, 268)
$iButton = GUICtrlCreateButton('Найти пункт', 400 - 120, 300 - 25, 110, 20)
$iInput = GUICtrlCreateInput('пУнкт тЕстОвЫй', 10, 300 - 25, 200, 20)
GUISetState()
; Добавляет колонку
_GUICtrlListView_AddColumn($iListView, "Колонка 1", 200)
; Приостанавливает перерисовку
_GUICtrlListView_BeginUpdate($iListView)
; Добавляет пункты
For $i = 1 To 49
_GUICtrlListView_AddItem($iListView, "Пункт " & $i)
Next
_GUICtrlListView_AddItem($iListView, "Пункт тестовый")
For $i = 51 To 100
_GUICtrlListView_AddItem($iListView, "Пункт " & $i)
Next
; Восстанавливает перерисовку
_GUICtrlListView_EndUpdate($iListView)
While 1
Switch GUIGetMsg()
Case $iButton
$sTmp = GUICtrlRead($iInput)
; Получает индекс найденного пункта по тексту
$ind = _GUICtrlListView_FindText($iListView, $sTmp, 49, False, True)
; Прокручивает ListView к найденному пункту
_GUICtrlListView_EnsureVisible($iListView, $ind)
Case -3
Exit
EndSwitch
WEnd