Function Reference


_GUICtrlMenu_GetMenuInfo

Retrieves information about a specified menu

#include <GuiMenu.au3>
_GUICtrlMenu_GetMenuInfo ( $hMenu )

Parameters

$hMenu Handle of the menu

Return Value

Success: a $tagMENUINFO structure.
Failure: sets the @error flag to non-zero.

Related

$tagMENUINFO, _GUICtrlMenu_SetMenuInfo

See Also

Search GetMenuInfo in MSDN Library.

Example

#include <GuiMenu.au3>

Example()

Func Example()
        Local $hWnd, $hMain, $hFile, $tInfo

        ; Open Notepad
        Run("notepad.exe")
        WinWaitActive("[CLASS:Notepad]")
        $hWnd = WinGetHandle("[CLASS:Notepad]")
        $hMain = _GUICtrlMenu_GetMenu($hWnd)
        $hFile = _GUICtrlMenu_GetItemSubMenu($hMain, 0)

        ; Get/Set File menu information
        $tInfo = _GUICtrlMenu_GetMenuInfo($hFile)
        Writeln("Menu style ..........: " & DllStructGetData($tInfo, "Style"))
        Writeln("Menu max height .....: " & DllStructGetData($tInfo, "YMax"))
        Writeln("Menu background brush: " & DllStructGetData($tInfo, "hBack"))
        Writeln("Menu context help ID : " & DllStructGetData($tInfo, "ContextHelpID"))
        Writeln("Menu data ...........: " & DllStructGetData($tInfo, "MenuData"))
        Writeln("")
        $tInfo = DllStructCreate($tagMENUINFO)
        DllStructSetData($tInfo, "Size", DllStructGetSize($tInfo))
        DllStructSetData($tInfo, "Mask", BitOR($MIM_HELPID, $MIM_MAXHEIGHT, $MIM_MENUDATA))
        DllStructSetData($tInfo, "YMax", 100)
        DllStructSetData($tInfo, "ContextHelpID", 1234)
        DllStructSetData($tInfo, "MenuData", 4567)
        _GUICtrlMenu_SetMenuInfo($hFile, $tInfo)
        $tInfo = _GUICtrlMenu_GetMenuInfo($hFile)
        Writeln("Menu style ..........: " & DllStructGetData($tInfo, "Style"))
        Writeln("Menu max height .....: " & DllStructGetData($tInfo, "YMax"))
        Writeln("Menu background brush: " & DllStructGetData($tInfo, "hBack"))
        Writeln("Menu context help ID : " & DllStructGetData($tInfo, "ContextHelpID"))
        Writeln("Menu data ...........: " & DllStructGetData($tInfo, "MenuData"))
        Writeln("")
EndFunc   ;==>Example

; Write a line of text to Notepad
Func Writeln($sText)
        ControlSend("[CLASS:Notepad]", "", "Edit1", $sText & @CRLF)
EndFunc   ;==>Writeln