# Function Reference

# _GUICtrlListView_GetItemState

Retrieves the state of a listview item

#include <GuiListView.au3>
_GUICtrlListView_GetItemState ( $hWnd, $iIndex, $iMask )

## Parameters

$hWnd | Control ID/Handle to the control
$iIndex | 0-based index of the item
$iMask | State information to retrieve. This can be a combination of: $LVIS_CUT - The item is marked for a cut-and-paste operation $LVIS_DROPHILITED - The item is highlighted as a drag-and-drop target $LVIS_FOCUSED - The item has the focus, so it is surrounded by a standard focus rectangle $LVIS_SELECTED - The item is selected $LVIS_OVERLAYMASK - Use this mask to retrieve the item's overlay image index $LVIS_STATEIMAGEMASK - Use this mask to retrieve the item's state image index

## Return Value

Returns the current state for the specified item.

## Remarks

An items state information includes a set of bit flags as well as image list indexes that indicate the item's state image and overlay image

## Related

_GUICtrlListView_SetItemState

## Example

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

    Example()

    Func Example()
        GUICreate("ListView Get/Set Item State (v" & @AutoItVersion & ")", 400, 300)
        Local $idListview = GUICtrlCreateListView("", 2, 2, 394, 268)

        Local $iStylesEx = BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_SUBITEMIMAGES)
        _GUICtrlListView_SetExtendedListViewStyle($idListview, $iStylesEx)
        GUISetState(@SW_SHOW)

        ; Set ANSI format
    ;~     _GUICtrlListView_SetUnicodeFormat($idListview, False)

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

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

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

        ; Get item 0 state
        _GUICtrlListView_SetItemState($idListview, 0, $LVIS_FOCUSED, $LVIS_FOCUSED)
        MsgBox($MB_SYSTEMMODAL, "Information", "Item 0 State: " & _GUICtrlListView_GetItemState($idListview, 0, $LVIS_FOCUSED))

        ; Loop until the user exits.
        Do
        Until GUIGetMsg() = $GUI_EVENT_CLOSE
        GUIDelete()
    EndFunc   ;==>Example