Функция _GUICtrlMenu_GetMenuInfo

         Описание функции


_GUICtrlMenu_GetMenuInfo

Возвращает информацию об указанном меню

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

Параметры

$hMenu Дескриптор меню

Возвращаемое значение

Успех:Возвращает структуру $tagMENUINFO
Ошибка:Устанавливает @error

См. также

_GUICtrlMenu_SetMenuInfo, $tagMENUINFO

См. также

Искать GetMenuInfo в библиотеке MSDN

Пример

#include <GuiMenu.au3>

_Main()

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

    ; Запуск блокнота
    Run("notepad.exe")
    $hWnd = WinWaitActive("[CLASS:Notepad]")
    $hMain = _GUICtrlMenu_GetMenu($hWnd)
    $hFile = _GUICtrlMenu_GetItemSubMenu($hMain, 0)

    ; Установить / получить информацию о меню "Файл"
    $tInfo = _GUICtrlMenu_GetMenuInfo($hFile)
    Writeln("Стиль меню ............: " & DllStructGetData($tInfo, "Style"))
    Writeln("Макс. высота меню .....: " & DllStructGetData($tInfo, "YMax"))
    Writeln("Кисть фона меню .......: " & DllStructGetData($tInfo, "hBack"))
    Writeln("Menu context help ID ..: " & DllStructGetData($tInfo, "ContextHelpID"))
    Writeln("Ассоциат. значение ....: " & 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("Стиль меню ............: " & DllStructGetData($tInfo, "Style"))
    Writeln("Макс. высота меню .....: " & DllStructGetData($tInfo, "YMax"))
    Writeln("Кисть фона меню .......: " & DllStructGetData($tInfo, "hBack"))
    Writeln("Menu context help ID ..: " & DllStructGetData($tInfo, "ContextHelpID"))
    Writeln("Ассоциат. значение ....: " & DllStructGetData($tInfo, "MenuData"))
    Writeln("")

EndFunc   ;==>_Main

; Записывает строку текста в блокнот
Func Writeln($sText)
    ControlSend("[CLASS:Notepad]", "", "Edit1", $sText & @CR)
EndFunc   ;==>Writeln