# Function Reference

# _GUIImageList_Add

Adds an image or images to an image list

#include <GuiImageList.au3>
_GUIImageList_Add ( $hWnd, $hImage [, $hMask = 0] )

## Parameters

$hWnd | Handle to the imagelist
$hImage | Handle to the bitmap that contains the image or images. The number of images is inferred from the width of the bitmap.
$hMask | [optional] Handle to the bitmap that contains the mask

## Return Value

Success: | the index of the first new image.
Failure: | -1.

## Remarks

This function copies the bitmap to an internal data structure.
Be sure to use the _WinAPI_DeleteObject() function to delete $hImage and $hMask after the function returns.

## Related

_GUIImageList_AddBitmap, _GUIImageList_AddIcon, _GUIImageList_AddMasked, _WinAPI_DeleteObject

## Example

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

    Example()

    Func Example()
        Local $idListview, $hImage
        Local $iStylesEx = BitOR($LVS_EX_GRIDLINES, $LVS_EX_FULLROWSELECT, $LVS_EX_SUBITEMIMAGES)

        GUICreate("ImageList Add", 400, 300)
        $idListview = GUICtrlCreateListView("", 2, 2, 394, 268, BitOR($LVS_SHOWSELALWAYS, $LVS_NOSORTHEADER, $LVS_REPORT))
        _GUICtrlListView_SetExtendedListViewStyle($idListview, $iStylesEx)
        GUISetState(@SW_SHOW)

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

        ; Add columns
        _GUICtrlListView_AddColumn($idListview, "Items", 120)

        ; Add items
        _GUICtrlListView_AddItem($idListview, "Item 1", 0)
        _GUICtrlListView_AddItem($idListview, "Item 2", 1)
        _GUICtrlListView_AddItem($idListview, "Item 3", 2)

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