Function Reference


_GUICtrlListView_GetGroupRect

Gets the rectangle for a specified group

#include <GuiListView.au3>
_GUICtrlListView_GetGroupRect ( $hWnd, $iGroupID [, $iGet = $LVGGR_GROUP] )

Parameters

$hWnd Control ID/Handle to the control
$iGroupID ID that specifies the group whose information is retrieved
$iGet [optional] Flag to specify the coordinates of the rectangle to get, can be one of the following:
    $LVGGR_GROUP - Coordinates of the entire expanded group
    $LVGGR_HEADER - Coordinates of the header only (collapsed group)
    $LVGGR_LABEL - Coordinates of the label only
    $LVGGR_SUBSETLINK - Coordinates of the subset link only (markup subset)

Return Value

Returns an array with the following format:
[0] - Specifies the x-coordinate of the upper-left corner of the rectangle
[1] - Specifies the y-coordinate of the upper-left corner of the rectangle
[2] - Specifies the x-coordinate of the lower-right corner of the rectangle
[3] - Specifies the y-coordinate of the lower-right corner of the rectangle

Remarks

Windows Vista or later

Example

#include <GUIConstantsEx.au3>
#include <GuiImageList.au3>
#include <GuiListView.au3>
#include <MsgBoxConstants.au3>

Example()

Func Example()
    Local $aInfo, $hImage, $idListview

    GUICreate("ListView Get Group Info", 400, 300)

    $idListview = GUICtrlCreateListView("", 2, 2, 394, 268)
    GUISetState(@SW_SHOW)

    ; Load images
    $hImage = _GUIImageList_Create()
    _GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap(GUICtrlGetHandle($idListview), 0xFF0000, 16, 16))
    _GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap(GUICtrlGetHandle($idListview), 0x00FF00, 16, 16))
    _GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap(GUICtrlGetHandle($idListview), 0x0000FF, 16, 16))
    _GUICtrlListView_SetImageList($idListview, $hImage, 1)

    ; Add columns
    _GUICtrlListView_AddColumn($idListview, "Column 1", 100)
    _GUICtrlListView_AddColumn($idListview, "Column 2", 100)
    _GUICtrlListView_AddColumn($idListview, "Column 3", 100)

    ; Add items
    _GUICtrlListView_AddItem($idListview, "Row 1: Col 1", 0)
    _GUICtrlListView_AddSubItem($idListview, 0, "Row 1: Col 2", 1)
    _GUICtrlListView_AddSubItem($idListview, 0, "Row 1: Col 3", 2)
    _GUICtrlListView_AddItem($idListview, "Row 2: Col 1", 1)
    _GUICtrlListView_AddSubItem($idListview, 1, "Row 2: Col 2", 1)
    _GUICtrlListView_AddItem($idListview, "Row 3: Col 1", 2)

    ; Build groups
    _GUICtrlListView_EnableGroupView($idListview)
    _GUICtrlListView_InsertGroup($idListview, -1, 1, "Group 1", 1)
    _GUICtrlListView_InsertGroup($idListview, -1, 2, "Group 2")
    _GUICtrlListView_SetItemGroupID($idListview, 0, 1)
    _GUICtrlListView_SetItemGroupID($idListview, 1, 2)
    _GUICtrlListView_SetItemGroupID($idListview, 2, 2)

    ; Get rect of Group ID 2
    $aInfo = _GUICtrlListView_GetGroupRect($idListview, 2)
    MsgBox($MB_SYSTEMMODAL, "Information", "Rect: " & @CRLF & _
            @TAB & "Left..: " & $aInfo[0] & @CRLF & _
            @TAB & "Top...: " & $aInfo[1] & @CRLF & _
            @TAB & "Right.: " & $aInfo[2] & @CRLF & _
            @TAB & "Bottom: " & $aInfo[3])

    ; Loop until the user exits.
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

    GUIDelete()
EndFunc   ;==>Example