Структура POPUPMENUITEM


Структура POPUPMENUITEM содержит информацию о пунктах меню в ресурсе меню, которые открывают меню или подменю. Определение структуры предоставлено здесь  только для объяснения; она не представлена в каком-либо стандартном заголовочном файле.

Синтаксис

struct POPUPMENUITEM {
  DWORD type;
  DWORD state;
  DWORD id;
  WORD resInfo;
  szOrOrd menuText;
};

Члены структуры

type

Задает установку типовых флажков, которые Вы можете использовать, чтобы характеризовать пункт меню. Некоторые из значений, которые этот член структуры может включать в себя, показаны в списке ниже.

В дополнение к указанным значениям, этот член структуры может также быть и комбинацией типовых значений, перечисляемых в члене fType структуры MENUITEMINFO. Типовые значения - это значения, которые начинаются с MFT_. Чтобы использовать эти  предопределенные значения MFT_*, в ваш .rc файл включите нижеследующую инструкцию:

#include "WINUSER.H"

 

Значение Предназначение
MF_END Пункт меню является последним в меню; флажок используется внутри системы.
MF_POPUP Пункт меню открывает меню или подменю; флажок используется внутри системы.

state

Задает установку флажков состояния, которые Вы можете использовать, чтобы характеризовать пункт меню. Этот член структуры может быть комбинацией значений состояния, перечисляемый в члене dwState структуры MENUITEMINFO. Значения состояния - это значения, которые начинаются с MFS_. Чтобы использовать эти предопределенные значения состояния MFS_*, в ваш .rc файл включите нижеследующую инструкцию:

#include "WINUSER.H"

id

Числовое выражение, идентифицирующее пункт меню, которое передается в сообщении WM_COMMAND.

resInfo

Набор битовых флажков, которые определяют тип пункта меню. Этот член структуры может быть одним из ниже перечисленных значений.

Значение Предназначение
MFR_END Пункт меню последний в этом подменю или ресурсе меню; этот флажок используется внутри системы.
MFR_POPUP Пункт меню открывает меню или подменю; флажок используется внутри системы.

menuText

Устанавливает символьную строку Unicode с символом конца строки ('\0'), которая содержит текст для этого пункта меню. Нет никакого установленного предела для размера этой символьной строки.

Замечания

Для каждого пункта меню, который открывает меню или подменю, имеется одна структура POPUPMENUITEM. Идентифицируйте этот тип пункта меню, устанавливая член структуры  type в MF_POPUP, а в члене resInfo устанавливая бит MFR_POPUP в 0x0001. В этом случае заключительные данные, записанные в ресурс RT_MENU для меню или подменю, - это структура MENUHELPID. MENUHELPID содержит числовое выражение, которое идентифицирует меню в ходе обработки сообщения WM_HELP.

Дополнительно, каждая структура POPUPMENUITEM, которая имеет  в члене resInfo установленный бит MFR_POPUP, должен сопровождаться структурой MENUHELPID плюс дополнительное число структур POPUPMENUITEM, по одной для каждого пункта меню в этом подменю. Последняя структура POPUPMENUITEM в подменю должна иметь в члене resInfo установленный бит MFR_END. Чтобы находить конец ресурса, ищите соответствующий MFR_END для каждого MFR_POPUP плюс один дополнительный MFR_END, который соответствует наиболее удаленной установке пунктов меню.

Указывайте последний пункт меню, устанавливая член структуры type в MF_END. Поскольку Вы можете вкладывать подменю, может быть несколько уровней MF_END. В этих экземплярах, пункты меню являются последовательными.

Смотри также 

Обзор Ресурсы, Структуры, используемые ресурсами, MENUHEADERMENUHELPIDMENUITEMINFONORMALMENUITEM

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

Windows. NET Server

Да

Windows XP

Да

Windows 2000

Да

Windows NT

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

Windows Me

Да

Windows 98

Да

Windows 95

Да

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

-

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

 

- объявлено в

-

- включено в

-

Unicode

Нет

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

Не имеется

 

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

Hosted by uCoz