# Function Reference

# _GUICtrlToolbar_GetButtonInfo

Retrieves information for a button

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

## Parameters

$hWnd | Handle to the control
$iCommandID | Button command ID

## Return Value

Returns an array with the following format:
[0] - 0-based button image index
[1] - Button state. Can be a combination of the following:
$TBSTATE_CHECKED - The button has is being clicked
$TBSTATE_PRESSED - The button is being clicked
$TBSTATE_ENABLED - The button accepts user input
$TBSTATE_HIDDEN - The button is not visible
$TBSTATE_INDETERMINATE - The button is grayed
$TBSTATE_WRAP - The button is followed by a line break
$TBSTATE_ELLIPSES - The button's text is cut off
$TBSTATE_MARKED - The button is marked
[2] - Button style. Can be a combination of the following:
$BTNS_AUTOSIZE - The control should not assign the standard width
$BTNS_BUTTON - Standard button
$BTNS_CHECK - Toggles between the pressed and nonpressed
$BTNS_CHECKGROUP - Button that stays pressed until another button is pressed
$BTNS_DROPDOWN - Creates a drop-down style button that can display a list
$BTNS_GROUP - Button that stays pressed until another button is pressed
$BTNS_NOPREFIX - The button text will not have an accelerator prefix
$BTNS_SEP - Creates a separator
$BTNS_SHOWTEXT - Specifies that button text should be displayed
$BTNS_WHOLEDROPDOWN - Specifies that the button will have a drop-down arrow
[3] - Button width
[4] - Button parameter

## Related

_GUICtrlToolbar_SetButtonInfo

## Example

    #include "Extras\HelpFileInternals.au3"

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

    Example()

    Func Example()
        Local $hGUI, $hToolbar, $aButton
        Local Enum $e_idNew = 1000, $e_idOpen, $e_idSave, $e_idHelp

        ; Create GUI
        $hGUI = GUICreate("Toolbar", 400, 300)
        $hToolbar = _GUICtrlToolbar_Create($hGUI)
        _MemoCreate(2, 36, 396, 262, $WS_VSCROLL)
        GUISetState(@SW_SHOW)

        ; 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
        _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
        _GUICtrlToolbar_SetButtonInfo($hToolbar, $e_idSave, $STD_PRINT, BitOR($TBSTATE_PRESSED, $TBSTATE_ENABLED), -1, 100, 1234)

        ; Show Save button information
        $aButton = _GUICtrlToolbar_GetButtonInfo($hToolbar, $e_idSave)
        _MemoWrite("Image index ....: " & $aButton[0])
        _MemoWrite("State flags ....: " & $aButton[1])
        _MemoWrite("Style flags ....: " & $aButton[2])
        _MemoWrite("Button width ...: " & $aButton[3])
        _MemoWrite("Param ..........: " & $aButton[4])

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