_GUICtrlListBox_SelectString
Поиск пункта, который начинается с указанной строки
#include <GuiListBox.au3>
_GUICtrlListBox_SelectString($hWnd, $sText [, $iIndex = -1])
Параметры
$hWnd | Дескриптор или идентификатор элемента |
$sText |
Строка поиска. |
$iIndex |
[необязательный] Указывает индекс пункта, предшествующий пункту являющимся первым для начала поиска. Отсчёт индексов от 0. Когда поиск достигнет конца списка, поиск продолжится от начала списка до пункта $iIndex. Если $iIndex равен -1, то поиск выполняется по всему списку от начала. |
Возвращаемое значение
Успех: | Возвращает индекс выбранного пункта, отсчёт от 0 |
Ошибка: | Возвращает -1 |
Примечания
ListBox прокручивается, если это необходимо для перемещения выделенного пункта в поле зрения.См. также
_GUICtrlListBox_FindString, _GUICtrlListBox_FindInTextПример
#include <GuiListBox.au3>
#include <GUIConstantsEx.au3>
$Debug_LB = False ; Проверяет ClassName передаваемый в ListBox функции. Установите True и используйте дескриптор от другого элемента, чтобы увидеть как это работает
_Main()
Func _Main()
Local $sText, $hListBox
; Создаёт GUI
GUICreate("Поиск пункта от начала строки и выделение", 400, 296)
$hListBox = GUICtrlCreateList("", 2, 2, 396, 296)
GUISetState()
; Добавляет строки
_GUICtrlListBox_BeginUpdate($hListBox)
For $iI = 1 To 10
$sText = StringFormat("%03d : Рандомная строка ", 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 : Искомая строка")
_GUICtrlListBox_EndUpdate($hListBox)
; Поиск пункта и выделение
MsgBox(4160, "Информация", "Индекс искомой строки: " & _GUICtrlListBox_SelectString($hListBox, "020 : И"));
; Цикл выполняется, пока окно не будет закрыто
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
EndFunc ;==>_Main