Функция GetMenuItemInfo


Функция GetMenuItemInfo извлекает информацию о пункте меню.

Синтаксис

BOOL GetMenuItemInfo(
    HMENU hMenu,
    UINT uItem,
    BOOL fByPosition,
    LPMENUITEMINFO lpmii
); 

Параметры

hMenu

[in] Дескриптор меню, которое содержит пункт.

uItem

[in] Идентификатор или позиция пункта меню, о котором получаем информацию. Значение этого параметра зависит от значения параметра fByPosition.

fByPosition

[in] Устанавливает значение uItem. Если этот параметр - ЛОЖЬ (FALSE), uItem - идентификатор пункта меню. В противном случае, это - позиция пункта меню.

lpmii

[in, out] Указатель на структуру MENUITEMINFO, которая определяет информацию для извлечения и получает информацию о пункте меню.

Обратите внимание! на то, что Вы должны установить  член MENUITEMINFO.cbSize в sizeof (MENUITEMINFO) перед вызовом этой функции.

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

Если функция завершается успешно, величина возвращаемого значения - не нуль.

Если функция завершается с ошибкой, величина возвращаемого значения - нуль. Чтобы получить дополнительные сведения об ошибке, используйте функцию GetLastError.

Замечания

Чтобы извлечь данные о пункте меню типа MFT_STRING, сначала найдите размер строки, устанавливая член dwTypeData структуры MENUITEMINFO в ПУСТО (NULL), а затем вызовите функцию  GetMenuItemInfo. Значение члена cch+1 - необходимый размер. Далее выделите буфер этого же размера, поместите указатель на буфер в члене dwTypeData, увеличьте значение cch на единицу, и затем вызовите GetMenuItemInfo еще раз, чтобы заполнить буфер строкой.

Если извлеченный пункт меню имеет какой-либо другой тип, тогда  GetMenuItemInfo устанавливает член dwTypeData  в значение, тип которого определяется членом fTypefType  и устанавливает cch в 0.

Windows 98/Me и Windows 2000/XP: dwTypeData и cch используют MIIM_STRING.

Windows 95/98/Me: GetMenuItemInfoW поддерживается программой Microsoft Layer for Unicode. Чтобы использовать ее, Вы должны добавить некоторые файлы к вашему приложению, как изложено в описании Microsoft Layer for Unicode для системы Windows 95/98/Me.

Пример

Пример смотри в статье Пример пунктов собственного меню.

Смотри также

Краткий обзор Меню, SetMenuItemInfo

Размещение и совместимость GetMenuItemInfo

Windows. NET Server

Да

Windows XP

Да

Windows 2000

Да

Windows NT

Да версии 4.0 и выше

Windows Me

Да

Windows 98

Да

Windows 95

Да

Используемая библиотека

User32.lib

Заголовочный файл

 

- объявлено в

Winuser.h

- включено в

Windows.h

Unicode

Нет

Замечания по платформе

Не имеется

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz