C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 11.19.3.7 - Структура MENUITEMINFO / Меню. / Win32 API

11.19.3.7 - Структура MENUITEMINFO

Структура MENUITEMINFO содержит информацию о пункте меню.

Синтаксис

typedef struct tagMENUITEMINFO {
	UINT cbSize;
	UINT fMask;
	UINT fType;
	UINT fState;
	UINT wID;
	HMENU hSubMenu;
	HBITMAP hbmpChecked;
	HBITMAP hbmpUnchecked;
	DWORD dwItemData;
	LPTSTR  dwTypeData;
	UINT cch;
} MENUITEMINFO, FAR *LPMENUITEMINFO;

Члены сруктуры
cbsize
Размер структуры, в байтах.
fMask
Члены структуры, которые извлекаются или устанавливаются. Этот член структуры может иметь одно или несколько этих значений:

  • MIIM_CHECKMARKS - Получает или устанавливает члены структуры hbmpChecked и hbmpUnchecked.
  • MIIM_DATA - Получает или устанавливает член структуры dwItemData.
  • MIIM_ID - Получает или устанавливает член структуры wID.
  • MIIM_STATE - Получает или устанавливает член структуры fState.
  • MIIM_SUBMENU - Получает или устанавливает член структуры hSubMenu.
  • MIIM_TYPE - Получает или устанавливает члены структуры fType и dwTypeData.

fType
Тип пункта меню. Этот член стуктуры может иметь одно или несколько этих значений:

  • MFT_BITMAP - Показывает на экране пункт меню, используя точечный рисунок. Младшее слово члена структуры dwTypeData - дескриптор точечного рисунка, а член cch игнорируется.
  • MFT_MENUBARBREAK - Помещает пункт меню в новую строку (для горизонтального меню) или в новый столбец (для "выскакивающего" меню, подменю, или контекстного меню). Для "выскакивающего" меню, подменю, или контекстного меню, вертикальная черта отделяет новый столбец от старого.
  • MFT_MENUBREAK - Помещает пункт меню в новую строку (для горизонтального меню) или в новом столбце (для "выскакивающего" меню, подменю, или контекстного меню). Для "выскакивающего" меню, подменю, или контекстного меню, столбцы не отделяются вертикальной чертой.
  • MFT_OWNERDRAW - Присваивает ответственность за прорисовку пункта меню к окну, которое владет меню. Окно получает сообщение WM_MEASUREITEM прежде, чем меню покажется на экране впервые, а сообщение WM_DRAWITEM всякий раз, когда внешний вид пункта меню должен быть модифицирован. Если это значение определено, член структуры dwTypeData содержит определяемое программой 32-разрядное значение.
  • MFT_RADIOCHECK - Показывает на экране отмеченные маркером пункты меню, используя вместо "галочки" переключатель радиокнопок в том случае, если член структуры hbmpChecked имеет значение ПУСТО (NULL).
  • MFT_RIGHTJUSTIFY - Выравненный справа пункт меню и любые последующие пункты. Это значение допустимо, только в том случае, если пункт меню находится в горизонтальном меню.
  • MFT_SEPARATOR - Устанавливает, что пункт меню - разделитель. Разделитель пункта меню появляется как горизонтальная разделительная линия. Члены структуры dwTypeData и cch игнорируются. Это значение допустимо только в "выскакивающем" меню, подменю или контекстном меню.
  • MFT_STRING - Показывает на экране пункт меню, используя текстовую строку. Член стуктуры dwTypeData - указатель на строку с символом нуля в конце, а член cch равен длине строки.

Значения MFT_BITMAP, MFT_SEPARATOR и MFT_STRING не могут быть объединены друг с другом.
fState
Состояние пункта меню. Этот член стуктуры может иметь одно или несколько этих значений:

  • MFS_CHECKED - Отмечает "галочкой" пункт меню. Для получения дополнительной информации об установке отметок "галочкой" пунктов меню, см. член структуры hbmpChecked.
  • MFS_DEFAULT - Устанавливает, что пункт меню задан по умолчанию. Меню может содержать только один заданный по умолчанию пункт меню, который отображается полужирным шрифтом.
  • MFS_DISABLED - Отключает пункт меню так, чтобы он не мог быть выбран, но не окрашивает его в серый цвет (не делает недоступным).
  • MFS_ENABLED - Включает пункт меню так, чтобы он мог быть выбран. Это - заданное по умолчанию состояние.
  • MFS_GRAYED - Отключает пункт меню и окрашивает его в серый цвет (делает недоступным) так, чтобы он не мог быть выбран.
  • MFS_HILITE - Выделяет цветом пункт меню.
  • MFS_UNCHECKED - Снимает "галочку" в пункте меню. Для получения дополнительной информации о снятии "галочки" у пунктов меню, см. член hbmpUnchecked.
  • MFS_UNHILITE - Удаляет подсветку (выделение) пункта меню. Это - заданное по умолчанию состояние.

wID
Определяемое программой 16-разрядное значение, которое идентифицирует пункт меню.
hSubMenu
Дескриптор "выскакивающего" меню или подменю, связанного с пунктом меню. Если пункт меню - не пункт, который открывает "выскакивающее" меню или подменю, этот член имеет значение ПУСТО (NULL).
hbmpChecked
Дескриптор точечного рисунка, который показывается на экране рядом с пунктом, если он отмечен "галочкой". Если этот член структуры имеет значение ПУСТО (NULL), используется заданный по умолчанию точечный рисунок. Если определено значение типа MFT_RADIOCHECK, заданный по умолчанию точечный рисунок – жирная точка. Иначе, это - галочка.
hbmpUnchecked
Дескриптор точечного рисунка, который показывается на экране рядом с пунктом, если он не отмечен "галочкой". Если этот член имеет значение ПУСТО (NULL), никакой рисунок не используется.
dwItemData
Определяемое программой значение, связанное с пунктом меню.
dwTypeData
Содержание пункта меню. Значение этого члена структуры зависит от типа пункта меню: MFT_BITMAP, MFT_SEPARATOR или MFT_STRING.
cch
Длина текста пункта меню, когда информация принимается о пункте меню типа MFT_STRING. Это значение нулевое для других типов пункта меню. Этот член структуры игнорируется, когда содержание пункта меню установлено.

Замечания
Структура MENUITEMINFO используется функциями GetMenuItemInfo, InsertMenuItem и SetMenuItemInfo.

Смотри также
GetMenuItemInfo, InsertMenuItem, SetMenuItemInfo, WM_DRAWITEM, WM_MEASUREITEM.


| |
Автор Владимир Соковиков.
[AD]