CSnapInItemImpl::UpdateMenuState
Эта функция вызывается для изменения пункт меню, прежде чем оно вставляется в контекстное меню объекта оснастки.
void UpdateMenuState(
UINT id,
LPTSTR pBuf,
UINT *flags
);
Параметры
id
[in] Идентификатор пункта меню.pBuf
[in] Указатель на строку для пункта меню, подлежащих обновлению.flags
[in] Определяет новые национальные флаги. Это может быть сочетанием следующих флаги:MF_POPUP Указывает, что это подменю в контекстное меню. Пункты меню точки вставки, а дополнительные вложенные меню могут быть добавлены к этому подменю " lCommandID, используя его в качестве IInsertionPointID.
MF_BITMAP и MF_OWNERDRAW эти флаги запрещены и приводят к E_INVALIDARG в возвращаемом значении.
MF_SEPARATOR Рисует горизонтальную линию раздела. Только IContextMenuProvider разрешено для добавления пунктов меню с MF_SEPARATOR, для которых.
MF_CHECKED Устанавливает флажок рядом с пунктом меню.
MF_DISABLED Отключить пункт меню поэтому его нельзя выбрать, но не серый пометить делает его.
MF_ENABLED включает пункт меню поэтому он может выбрать, извлечение его от ее состояния отображается серым цветом.
MF_GRAYED Отключение пункта меню, graying он поэтому он не могут быть выбраны.
MF_MENUBARBREAK Действует так же, как и пометить MF_MENUBREAK для строки меню. В раскрывающемся меню выберите вложенного меню или в контекстном меню, новый столбец отделен от старого столбца вертикальной линии.
MF_MENUBREAK Задает элемент в новой линий (для строки меню) или в новом столбце (для раскрывающегося меню подменю или контекстного меню) без разделения столбцов.
MF_UNCHECKED Не устанавливает флажок рядом с элементом (по умолчанию).
Следующие группы в составе флаги не может использоваться вместе:
MF_DISABLED, MF_ENABLED и MF_GRAYED.
MF_MENUBARBREAK и MF_MENUBREAK.
MF_CHECKED и MF_UNCHECKED.
Требования
Header: atlsnap.h