Поделиться через


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

См. также

Ссылки

CSnapInItemImpl Class