Function Reference


_GUICtrlHeader_GetItemImage

Retrieves the index of an image within the image list

#include <GuiHeader.au3>
_GUICtrlHeader_GetItemImage ( $hWnd, $iIndex )

Parameters

$hWnd Handle to the control
$iIndex 0-based item index

Return Value

Returns the 0-based index of the image.

Related

_GUICtrlHeader_SetItemImage

Example

Example 1

#include "Extras\HelpFileInternals.au3"

#include <GUIConstantsEx.au3>
#include <GuiHeader.au3>
#include <GuiImageList.au3>
#include <WinAPIGdi.au3>

Example()

Func Example()
    ; Create GUI
    Local $hGUI = GUICreate("Header Get/Set ItemImage (v" & @AutoItVersion & ")", 450, 300, 100, 100)
    Local $hHeader = _GUICtrlHeader_Create($hGUI)
    _MemoCreate(2, 52, 444, 220)

;~  _GUICtrlHeader_SetUnicodeFormat($hHeader, True)

    GUISetState(@SW_SHOW)

    ; Create an image list with images
    Local $hImage = _GUIImageList_Create(11, 11)
    _GUIImageList_Add($hImage, _WinAPI_CreateSolidBitmap($hGUI, 0xFF0000, 11, 11))
    _GUIImageList_Add($hImage, _WinAPI_CreateSolidBitmap($hGUI, 0x00FF00, 11, 11))
    _GUIImageList_Add($hImage, _WinAPI_CreateSolidBitmap($hGUI, 0x0000FF, 11, 11))
    _GUICtrlHeader_SetImageList($hHeader, $hImage)

    ; Add columns
    _GUICtrlHeader_AddItem($hHeader, "Column 0", 100, 0, 0)
    _GUICtrlHeader_AddItem($hHeader, "Column 1", 100, 0, 1)
    _GUICtrlHeader_AddItem($hHeader, "Column 2", 100, 0, 2)
    _GUICtrlHeader_AddItem($hHeader, "Column 3", 100)

    ; Show column 0 image
    _MemoWrite("Column 0 image: " & _GUICtrlHeader_GetItemImage($hHeader, 0))

    Sleep(1000)

    ; Set column 0 image
    _GUICtrlHeader_SetItemImage($hHeader, 0, 2)

    ; Show column 0 image
    _MemoWrite("Column 0 image: " & _GUICtrlHeader_GetItemImage($hHeader, 0))

    _MemoMsgBoxStatus("", -1, $hGUI) ; no more action, wait GUI for closing

EndFunc   ;==>Example

Example 2 : Header Set ItemImage to an External process

#include "Extras\HelpFileInternals.au3"

#include <GuiHeader.au3>

Example()

Func Example()
    Local $sFromTo
    Local $hWin = _MemoRunAU3OutProcess($sFromTo, True) ; OK also if run in different mode

    Local $hHeader = _MemoCreateOutProcess($hWin, "SysHeader32", 1, $sFromTo)

    ; Show column 0 image
    _MemoWrite(">>> Column 0 image: " & _GUICtrlHeader_GetItemImage($hHeader, 0))

    ; Set column 0 image
    _GUICtrlHeader_SetItemImage($hHeader, 0, 1)
    If @error Then
        _MemoWrite("_GUICtrlHeader_SetItemImage()" & " @error = " & @error & @CRLF & _
            @TAB & "cannot be set by an external process")

    EndIf

    _MemoMsgBoxStatus("", -1, $hWin) ; no more action, wait GUI for closing

EndFunc   ;==>Example