# Function Reference

# _GUICtrlToolbar_SetButtonInfoEx

Sets extended information for a button

#include <GuiToolbar.au3>
_GUICtrlToolbar_SetButtonInfoEx ( $hWnd, $iCommandID, $tButton )

## Parameters

$hWnd | Handle to the control
$iCommandID | Button command ID
$tButton | $tagTBBUTTONINFO structure

## Return Value

Success: | True.
Failure: | False.

## Related

$tagTBBUTTONINFO, _GUICtrlToolbar_GetButtonInfoEx

## Example

    #include "Extras\HelpFileInternals.au3"

    #include <GUIConstantsEx.au3>
    #include <GuiToolbar.au3>
    #include <StructureConstants.au3>
    #include <WinAPIConstants.au3>
    #include <WindowsStylesConstants.au3>

    Example()

    Func Example()
        ; Create GUI
        Local $hGUI = GUICreate("Toolbar Get/Set Button InfoEx (v" & @AutoItVersion & ")", 400, 300)
        Local $hToolbar = _GUICtrlToolbar_Create($hGUI)
        _MemoCreate(2, 36, 396, 262, $WS_VSCROLL)
        GUISetState(@SW_SHOW)

        ; Set ANSI format
    ;~     _GUICtrlToolbar_SetUnicodeFormat($hToolbar, False)

        ; Add standard system bitmaps
        Switch _GUICtrlToolbar_GetBitmapFlags($hToolbar)
            Case 0
                _GUICtrlToolbar_AddBitmap($hToolbar, 1, -1, $IDB_STD_SMALL_COLOR)
            Case 2
                _GUICtrlToolbar_AddBitmap($hToolbar, 1, -1, $IDB_STD_LARGE_COLOR)
        EndSwitch

        ; Add buttons
        Local Enum $e_idNew = 1000, $e_idOpen, $e_idSave, $e_idHelp
        _GUICtrlToolbar_AddButton($hToolbar, $e_idNew, $STD_FILENEW)
        _GUICtrlToolbar_AddButton($hToolbar, $e_idOpen, $STD_FILEOPEN)
        _GUICtrlToolbar_AddButton($hToolbar, $e_idSave, $STD_FILESAVE)
        _GUICtrlToolbar_AddButtonSep($hToolbar)
        _GUICtrlToolbar_AddButton($hToolbar, $e_idHelp, $STD_HELP)

        ; Set Save button information
        Local $tButton = DllStructCreate($tagTBBUTTONINFO)
        DllStructSetData($tButton, "Mask", BitOR($TBIF_IMAGE, $TBIF_STATE, $TBIF_SIZE, $TBIF_LPARAM))
        DllStructSetData($tButton, "State", BitOR($TBSTATE_PRESSED, $TBSTATE_ENABLED))
        DllStructSetData($tButton, "Image", $STD_PRINT)
        DllStructSetData($tButton, "CX", 100)
        DllStructSetData($tButton, "Param", 1234)
        _GUICtrlToolbar_SetButtonInfoEx($hToolbar, $e_idSave, $tButton)

        ; Show Save button information
        $tButton = _GUICtrlToolbar_GetButtonInfoEx($hToolbar, $e_idSave)
        _MemoWrite("Image index ....: " & DllStructGetData($tButton, "Image"))
        _MemoWrite("State flags ....: " & DllStructGetData($tButton, "State"))
        _MemoWrite("Button width ...: " & DllStructGetData($tButton, "CX"))
        _MemoWrite("Param ..........: " & DllStructGetData($tButton, "Param"))

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