Структура MENUINFO содержит информацию о меню.
Синтаксис
typedef struct tagMENUINFO {
DWORD cbSize;
DWORD fMask;
DWORD dwStyle;
UINT cyMax;
HBRUSH hbrBack;
DWORD dwContextHelpID;
ULONG_PTR dwMenuData;
} MENUINFO, FAR *LPMENUINFO;
typedef MENUINFO CONST FAR *LPCMENUINFO;
Члены сруктуры
cbSize
Размер структуры, в байтах. Вызывающая программа должна установить этот параметр в sizeof (MENUINFO).
fMask
Члены структуры, которые извлекаются или устанавливаются (исключение для MIM_APPLYTOSUBMENUS). Этот член может быть один или несколько из ниже перечисленных значений:
- MIM_APPLYTOSUBMENUS - Параметры настройки применяются к меню и всем его подменю. Функция SetMenuInfo использует этот флажок, а GetMenuInfo игнорирует этот флажок.
- MIM_BACKGROUND - Извлекает или устанавливает член hbrBack структуры.
- MIM_HELPID - Извлекает или устанавливает член dwContextHelpID структуры.
- MIM_MAXHEIGHT - Извлекает или устанавливает член cyMax структуры.
- MIM_MENUDATA - Извлекает или устанавливает член dwMenuData структуры.
- MIM_STYLE - Извлекает или устанавливает член dwStyle структуры.
dwStyle
Стиль меню. Этот член может быть одно или несколько из ниже перечисленных значений:
- MNS_AUTODISMISS - Меню автоматически закрвается, когда мышь находится вне меню приблизительно через 10 секунд.
- MNS_CHECKORBMP - Одно и то же пространство резервируется для галочки и точечного рисунка. Если галочка рисуется, точечный рисунок - нет. Все галочки и рисунки выравниваются. Используется для меню, где некоторые пункты используют галочки, а некоторые используют точечные рисунки.
- MNS_DRAGDROP - Пункты меню являются OLE целевыми пунктами перемещения данных или источниками перемещаемых данных. Владелец меню получает сообщения WM_MENUDRAG и WM_MENUGETOBJECT.
- MNS_MODELESS - Меню является немодальным; то есть, нет никакого меню с модальным циклом обработки сообщений, в то время как меню активно.
- MNS_NOCHECK - Пространство слева от пункта для галочки не резервируется. Пункт может все еще выбираться, но галочка не будет появляться рядом с пунктом.
- MNS_NOTIFYBYPOS - Владелец меню, когда пользователь делает выбор, получает сообщение WM_MENUCOMMAND вместо сообщения WM_COMMAND.
cyMax
Максимальная высота меню в пикселях. Когда пункты меню превышают доступное пространство, автоматически используются линейки прокрутки. Значение по умолчанию (0) является экранной высотой.
hbrBack
Кисть, которая используется для фона меню.
dwContextHelpID
Идентификатор контекстной справки. Это - то же самое значение, используемое в функциях GetMenuContextHelpId и SetMenuContextHelpId.
dwMenuData
Значение определяемое прграммой.
Смотри также
GetMenuInfo, GetMenuContextHelpId, SetMenuInfo, SetMenuContextHelpId, WM_COMMAND, WM_MENUCOMMAND, WM_MENUDRAG, WM_MENUGETOBJECT
Размещение и совместимость MENUINFO
Windows NT Да
Win95 Да
Win32s Нет
Импортируемая библиотека -
Заголовочный файл winuser.h
Unicode Нет
Замечания по платформе Включен в Windows 98/NT/2000