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


_GUICtrlListView_GetItemRect

Возвращает прямоугольник, обрамляющий весь пункт или его часть

#include <GuiListView.au3>
_GUICtrlListView_GetItemRect($hWnd, $iIndex [, $iPart = 3])

Параметры

$hWnd Дескриптор или идентификатор элемента
$iIndex Индекс пункта
$iPart [необязательный] Часть пункта, которую необходимо извлечь:
    0 - Прямоугольник, обрамляющий весь пункт
    1 - Прямоугольник, обрамляющий иконку или маленькую иконку
    2 - Прямоугольник, обрамляющий текст пункта
    3 - Объединяет опции 1-ую и 2-ую, но исключает колонки в стиле report

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

Возвращает массив следующего формата:
        [0] - X координата верхнего левого угла прямоугольника
        [1] - Y координата верхнего левого угла прямоугольника
        [2] - X координата правого нижнего угла прямоугольника
        [3] - Y координата правого нижнего угла прямоугольника

См. также

_GUICtrlListView_GetItemRectEx

Пример

#include <GUIConstantsEx.au3>
#include <GuiListView.au3>
#include <WindowsConstants.au3>

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

_Main()

Func _Main()
    Local $aRect, $hListView

    GUICreate("Получает прямоугольник пункта", 400, 300)
    $hListView = GUICtrlCreateListView("", 2, 2, 394, 268)
    GUISetState()

    ; Добавляет колонки
    _GUICtrlListView_AddColumn($hListView, "Пункты", 100)

    ; Добавляет пункты
    _GUICtrlListView_AddItem($hListView, "Пункт 1")
    _GUICtrlListView_AddItem($hListView, "Пункт 2")
    _GUICtrlListView_AddItem($hListView, "Пункт 3")

    ; Получает прямоугольник 2-го пункта
    $aRect = _GUICtrlListView_GetItemRect($hListView, 1)
    MsgBox(4160, "Информация", StringFormat("Прямоугольник 2-го пункта : [%d, %d, %d, %d]", $aRect[0], $aRect[1], $aRect[2], $aRect[3]))

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