Функция _GUICtrlListBox_ItemFromPoint

         Описание функции


_GUICtrlListBox_ItemFromPoint

Возвращает ближайший к указанной точке индекс пункта, отсчёт от 0

#include <GuiListBox.au3>
_GUICtrlListBox_ItemFromPoint($hWnd, $iX, $iY)

Параметры

$hWnd Дескриптор или идентификатор элемента
$iX X координата относительно левого верхнего угла клиентской области
$iY Y координата относительно левого верхнего угла клиентской области

Возвращаемое значение

Успех:Возвращает индекс ближайшего пункта
Ошибка:Возвращает -1, если точка находится вне клиентской области ListBox

Пример

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

$Debug_LB = False ; Проверяет ClassName передаваемый в ListBox функции. Установите True и используйте дескриптор от другого элемента, чтобы увидеть как это работает

_Main()

Func _Main()
    Local $hListBox

    ; Создаёт GUI
    GUICreate("Получает пункт из координат", 400, 296)
    $hListBox = GUICtrlCreateList("", 2, 2, 396, 296)
    GUISetState()

    ; Добавляет строки
    _GUICtrlListBox_BeginUpdate($hListBox)
    For $iI = 1 To 9
        _GUICtrlListBox_AddString($hListBox, StringFormat("%03d : Рандомная строка", Random(1, 100, 1)))
    Next
    _GUICtrlListBox_EndUpdate($hListBox)

    ; Получает пункт ближайший к координатам
    MsgBox(4160, "Информация", "Пункт ближайший к координатам 30, 30: " & _GUICtrlListBox_ItemFromPoint($hListBox, 30, 30))

    ; Цикл выполняется, пока окно не будет закрыто
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
EndFunc   ;==>_Main