Function Reference


_GUICtrlToolbar_GetButtonRect

Retrieves the bounding rectangle for a button

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

Parameters

$hWnd Handle to the control
$iCommandID Button command ID

Return Value

Returns an array with the following format:
    [0] - X coordinate of the upper left corner of the rectangle
    [1] - Y coordinate of the upper left corner of the rectangle
    [2] - X coordinate of the lower right corner of the rectangle
    [3] - Y coordinate of the lower right corner of the rectangle

Related

_GUICtrlToolbar_GetButtonRectEx

Example

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

Global $g_idMemo

Example()

Func Example()
        Local $hGUI, $hToolbar, $aRect
        Local Enum $e_idNew = 1000, $e_idOpen, $e_idSave, $idHelp

        ; Create GUI
        $hGUI = GUICreate("Toolbar", 400, 300)
        $hToolbar = _GUICtrlToolbar_Create($hGUI)
        $g_idMemo = GUICtrlCreateEdit("", 2, 36, 396, 262, $WS_VSCROLL)
        GUICtrlSetFont($g_idMemo, 10, 400, 0, "Courier New")
        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, $idHelp, $STD_HELP)

        ; Show Save button rectangle
        $aRect = _GUICtrlToolbar_GetButtonRect($hToolbar, $e_idSave)
        MemoWrite("Save Button Rect")
        MemoWrite("----------------")
        MemoWrite("Left ...: " & $aRect[0])
        MemoWrite("Top ....: " & $aRect[1])
        MemoWrite("Right ..: " & $aRect[2])
        MemoWrite("Bottom .: " & $aRect[3])

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

; Write message to memo
Func MemoWrite($sMessage = "")
        GUICtrlSetData($g_idMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite