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


Класс CMFCToolBarMenuButton

Кнопка панели инструментов, содержащая всплывающее меню. Дополнительные сведения см. в исходном коде, расположенном в папке VC\atlmfc\src\mfc установки Visual Studio.

Синтаксис

class CMFCToolBarMenuButton : public CMFCToolBarButton

Участники

Открытые конструкторы

Имя Описание
CMFCToolBarMenuButton::CMFCToolBarMenuButton Формирует объект CMFCToolBarMenuButton.

Открытые методы

Имя Описание
CMFCToolBarMenuButton::CompareWith Сравнивает этот экземпляр с предоставленным CMFCToolBarButton объектом. (Переопределения CMFCToolBarButton::CompareWith.)
CMFCToolBarMenuButton::CopyFrom Копирует свойства другой кнопки панели инструментов на текущую кнопку. (Переопределения CMFCToolBarButton::CopyFrom.)
CMFCToolBarMenuButton::CreateFromMenu Инициализирует меню панели инструментов из дескриптора меню Windows.
CMFCToolBarMenuButton::CreateMenu Создает меню Windows, состоящее из команд в меню панели инструментов. Возвращает дескриптор в меню Windows.
CMFCToolBarMenuButton::CreatePopupMenu Создает объект всплывающего меню ( класс CMFCPopupMenu) для отображения меню панели инструментов.
CMFCToolBarMenuButton::EnableQuickCustomize
CMFCToolBarMenuButton::GetCommands Предоставляет доступ только для чтения к списку команд в меню панели инструментов.
CMFCToolBarMenuButton::GetImageRect Извлекает ограничивающий прямоугольник для изображения кнопки.
CMFCToolBarMenuButton::GetPaletteRows Возвращает количество строк во всплывающем меню, когда меню находится в режиме палитры.
CMFCToolBarMenuButton::GetPopupMenu Возвращает указатель на объект всплывающего меню, связанный с кнопкой.
CMFCToolBarMenuButton::HasButton
CMFCToolBarMenuButton::HaveHotBorder Определяет, отображается ли граница кнопки, когда пользователь выбирает кнопку. (Переопределения CMFCToolBarButton::HaveHotBorder.)
CMFCToolBarMenuButton::IsBorder
CMFCToolBarMenuButton::IsClickedOnMenu
CMFCToolBarMenuButton::IsDroppedDown Определяет, отображается ли всплывающее меню.
CMFCToolBarMenuButton::IsEmptyMenuAllowed Вызывается платформой, чтобы определить, может ли пользователь открыть подменю из выбранного элемента меню.
CMFCToolBarMenuButton::IsExclusive Определяет, находится ли кнопка в монопольном режиме, то есть остается ли всплывающее меню открытым, даже если пользователь перемещает указатель на другую панель инструментов или кнопку.
CMFCToolBarMenuButton::IsMenuPaletteMode Определяет, находится ли всплывающее меню в режиме палитры.
CMFCToolBarMenuButton::IsQuickMode
CMFCToolBarMenuButton::IsTearOffMenu Определяет, имеет ли всплывающее меню слезоточивый бар.
CMFCToolBarMenuButton::OnAfterCreatePopupMenu
CMFCToolBarMenuButton::OnBeforeDrag Указывает, можно ли перетаскивать кнопку. (Переопределения CMFCToolBarButton::OnBeforeDrag.)
CMFCToolBarMenuButton::OnCalculateSize Вызывается платформой для вычисления размера кнопки для указанного контекста устройства и состояния закрепления. (Переопределения CMFCToolBarButton::OnCalculateSize.)
CMFCToolBarMenuButton::OnCancelMode Вызывается платформой для обработки сообщения WM_CANCELMODE . (Переопределения CMFCToolBarButton::OnCancelMode.)
CMFCToolBarMenuButton::OnChangeParentWnd Вызывается платформой при вставке кнопки в новую панель инструментов. (Переопределения CMFCToolBarButton::OnChangeParentWnd.)
CMFCToolBarMenuButton::OnClick Вызывается платформой, когда пользователь нажимает кнопку мыши. (Переопределения CMFCToolBarButton::OnClick.)
CMFCToolBarMenuButton::OnClickMenuItem Вызывается платформой, когда пользователь выбирает элемент во всплывающем меню.
CMFCToolBarMenuButton::OnContextHelp Вызывается платформой, когда родительская панель инструментов обрабатывает сообщение WM_HELPHITTEST. (Переопределения CMFCToolBarButton::OnContextHelp.)
CMFCToolBarMenuButton::OnDraw Вызывается платформой для рисования кнопки с помощью указанных стилей и параметров. (Переопределения CMFCToolBarButton::OnDraw.)
CMFCToolBarMenuButton::OnDrawOnCustomizeList Вызывается платформой для рисования кнопки в области "Команды " диалогового окна "Настройка ". (Переопределения CMFCToolBarButton::OnDrawOnCustomizeList.)
CMFCToolBarMenuButton::OpenPopupMenu Вызывается платформой, когда пользователь открывает всплывающее меню.
CMFCToolBarMenuButton::ResetImageToDefault Задает значение по умолчанию изображения, связанного с кнопкой. (Переопределения CMFCToolBarButton::ResetImageToDefault.)
CMFCToolBarMenuButton::SaveBarState Сохраняет состояние кнопки панели инструментов. (Переопределения CMFCToolBarButton::SaveBarState.)
CMFCToolBarMenuButton::Serialize Считывает этот объект из архива или записывает его в архив. (Переопределения CMFCToolBarButton::Serialize.)
CMFCToolBarMenuButton::SetACCData Заполняет предоставленный CAccessibilityData объект данными специальных возможностей с помощью кнопки панели инструментов. (Переопределения CMFCToolBarButton::SetACCData.)
CMFCToolBarMenuButton::SetMenuOnly Указывает, можно ли добавить кнопку на панель инструментов.
CMFCToolBarMenuButton::SetMenuPaletteMode Указывает, находится ли всплывающее меню в режиме палитры.
CMFCToolBarMenuButton::SetMessageWnd
CMFCToolBarMenuButton::SetRadio Принудив кнопку меню панели инструментов отобразить значок, указывающий, что он выбран.
CMFCToolBarMenuButton::SetTearOff Указывает идентификатор отключаемой панели для всплывающего меню.

Защищенные методы

Имя Описание
CMFCToolBarMenuButton::D rawDocumentIcon Рисует значок на кнопке меню.

Элементы данных

Имя Описание
CMFCToolBarMenuButton::m_bAlwaysCallOwnerDraw Если значение TRUE, платформа всегда вызывает CFrameWndEx::OnDrawMenuImage при нарисовке кнопки.

Замечания

Может CMFCToolBarMenuButton отображаться как меню, пункт меню с вложенным меню, кнопка, которая выполняет команду или отображает меню, или кнопку, отображающую только меню. Вы определяете поведение и внешний вид кнопки меню, указав такие параметры, как изображение, текст, дескриптор меню и идентификатор команды, связанный с кнопкой в конструкторе CMFCToolbarMenuButton::CMFCToolbarMenuButton.

Пользовательский класс, производный от CMFCToolbarMenuButton класса, должен использовать макрос DECLARE_SERIAL . Макрос DECLARE_DYNCREATE создает ошибку при закрытии приложения.

Пример

В следующем примере показано, как настроить CMFCToolBarMenuButton объект. В коде показано, как указать, что раскрывающееся меню находится в режиме палитры, и укажите идентификатор отключаемой панели, созданной при перетаскивании кнопки меню из строки меню. Этот фрагмент кода входит в состав примера Word Pad.

pBorderType->SetMenuPaletteMode(TRUE, 2 /* Rows number */);
pBorderType->SetTearOff(ID_BORDER_TEAROFF);

Иерархия наследования

CObject

CMFCToolBarButton

CMFCToolBarMenuButton

Требования

Заголовок: afxtoolbarmenubutton.h

CMFCToolBarMenuButton::CMFCToolBarMenuButton

Формирует объект CMFCToolBarMenuButton.

CMFCToolBarMenuButton();
CMFCToolBarMenuButton(const CMFCToolBarMenuButton& src);

CMFCToolBarMenuButton(
    UINT uiID,
    HMENU hMenu,
    int iImage,
    LPCTSTR lpszText=NULL,
    BOOL bUserButton=FALSE);

Параметры

src
[in] Существующий CMFCToolBarMenuButton объект, скопированный в этот CMFCToolBarMenuButton объект.

uiID
[in] Идентификатор команды, выполняемой при нажатии кнопки пользователем; или (UINT)-1 для кнопки меню, которая не выполняет команду напрямую.

hMenu
[in] Дескриптор меню; или NULL, если кнопка не содержит меню.

iImage
[in] Индекс изображения для кнопки; или -1, если эта кнопка не имеет значка или использует значок для команды, указанной uiID. Индекс совпадает с каждым CMFCToolBarImages объектом в приложении.

lpszText
[in] Текст кнопки меню панели инструментов.

bUserButton
[in] ЗНАЧЕНИЕ TRUE, если кнопка отображает определяемое пользователем изображение; False, если кнопка отображает предопределенное изображение, связанное с командой, указанной uiID.

Замечания

Если uiID является допустимым идентификатором команды, кнопка выполняет следующую команду, когда пользователь щелкает его. Если hMenu является допустимым дескриптором меню, кнопка предоставляет раскрывающееся меню, когда оно отображается на панели инструментов или в подменю, когда оно отображается в меню. Если и uiID, и hMenu допустимы, кнопка состоит из разделительная кнопка с частью, которая будет выполнять команду, когда пользователь щелкает его, и часть со стрелкой вниз, которая будет раскрываться меню, когда пользователь щелкает его. Однако если hMenu действителен, пользователь не сможет нажать кнопку, чтобы выполнить команду при вставке кнопки в меню.

Пример

В следующем примере показано, как создать объект CMFCToolBarMenuButton класса. Этот фрагмент кода входит в состав примера Word Pad.

CMFCToolBarMenuButton *pBorderType = new CMFCToolBarMenuButton(ID_BORDER_1, pPopup->GetSafeHmenu(),
                                                               GetCmdMgr()->GetCmdImage(ID_BORDER_1, FALSE),
                                                               _T("Borders"));

CMFCToolBarMenuButton::CompareWith

virtual BOOL CompareWith(const CMFCToolBarButton& other) const;

Параметры

[in] другой

Возвращаемое значение

Замечания

CMFCToolBarMenuButton::CopyFrom

virtual void CopyFrom(const CMFCToolBarButton& src);

Параметры

[in] src

Замечания

CMFCToolBarMenuButton::CreateFromMenu

Инициализирует меню панели инструментов из дескриптора меню Windows.

virtual void CreateFromMenu(HMENU hMenu);

Параметры

hMenu
[in] Дескриптор меню.

Замечания

Кнопка меню панели инструментов может отображать раскрывающийся список подменю.

Платформа вызывает этот метод для инициализации команд в подменю из меню.

CMFCToolBarMenuButton::CreateMenu

Создает меню, состоящее из команд в меню панели инструментов. Возвращает дескриптор в меню.

virtual HMENU CreateMenu() const;

Возвращаемое значение

Дескриптор меню в случае успешного выполнения. ЗНАЧЕНИЕ NULL, если список команд, связанных с кнопкой меню панели инструментов, пуст.

Замечания

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

CMFCToolBarMenuButton::CreatePopupMenu

CMFCPopupMenu Создает объект для отображения меню панели инструментов.

virtual CMFCPopupMenu* CreatePopupMenu();

Возвращаемое значение

Указатель на CMFCPopupMenu объект, отображающий раскрывающееся меню, связанное с кнопкой меню панели инструментов.

Замечания

Этот метод вызывается платформой для подготовки отображения раскрывающегося меню, связанного с кнопкой.

Реализация по умолчанию просто создает и возвращает новый CMFCPopupMenu объект. Переопределите этот метод, если вы хотите использовать производный тип класса CMFCPopupMenu или выполнить дополнительную инициализацию.

CMFCToolBarMenuButton::D rawDocumentIcon

Рисует значок документа на кнопке меню.

void DrawDocumentIcon(
    CDC* pDC,
    const CRect& rectImage,
    HICON hIcon);

Параметры

pDC
[in] Указатель на контекст устройства.

rectImage
[in] Координаты ограничивающего прямоугольника изображения.

hIcon
[in] Дескриптор значка.

Замечания

Этот метод принимает значок документа и рисует его на кнопке меню, в центре в области, указанной rectImage.

CMFCToolBarMenuButton::EnableQuickCustomize

void EnableQuickCustomize();

Замечания

CMFCToolBarMenuButton::HasButton

virtual BOOL HasButton() const;

Возвращаемое значение

Замечания

CMFCToolBarMenuButton::HaveHotBorder

virtual BOOL HaveHotBorder() const;

Возвращаемое значение

Замечания

CMFCToolBarMenuButton::IsBorder

virtual BOOL IsBorder() const;

Возвращаемое значение

Замечания

CMFCToolBarMenuButton::IsClickedOnMenu

BOOL IsClickedOnMenu() const;

Возвращаемое значение

Замечания

CMFCToolBarMenuButton::IsQuickMode

BOOL IsQuickMode();

Возвращаемое значение

Замечания

CMFCToolBarMenuButton::GetCommands

Предоставляет доступ только для чтения к списку команд в меню панели инструментов.

const CObList& GetCommands() const;

Возвращаемое значение

Ссылка const на объект класса CObList, содержащий коллекцию объектов класса CMFCToolBarButton.

Замечания

Кнопка меню панели инструментов может отображать подменю. Список команд в подменю можно указать в конструкторе или в CMFCToolBarMenuButton::CreateFromMenu в качестве дескриптора в меню (HMENU ). Меню преобразуется в список объектов, производных от класса CMFCToolBarButton и хранящихся во внутреннем CObList объекте. Вы можете получить доступ к этому списку, вызвав этот метод.

CMFCToolBarMenuButton::GetImageRect

Извлекает ограничивающий прямоугольник для изображения кнопки.

void GetImageRect(CRect& rectImage);

Параметры

rectImage
[out] Ссылка на CRect объект, получающий координаты ограничивающего прямоугольника изображения.

CMFCToolBarMenuButton::GetPaletteRows

Возвращает количество строк в раскрывающемся меню, когда меню находится в режиме палитры.

int GetPaletteRows() const;

Возвращаемое значение

Количество строк в палитре.

Замечания

Если для кнопки меню задан режим палитры, элементы меню будут отображаться в нескольких столбцах только с ограниченным количеством строк. Вызовите этот метод, чтобы получить количество строк. Вы можете включить или отключить режим палитры и указать количество строк с помощью CMFCToolBarMenuButton::SetMenuPaletteMode.

CMFCToolBarMenuButton::GetPopupMenu

Возвращает указатель на объект класса CMFCPopupMenu, представляющий раскрывающееся меню кнопки.

CMFCPopupMenu* GetPopupMenu() const;

Возвращаемое значение

Указатель на объект класса CMFCPopupMenu, созданный при создании платформы подменю кнопки меню панели инструментов; ЗНАЧЕНИЕ NULL, если не отображается подменю.

Замечания

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

CMFCToolBarMenuButton::IsDroppedDown

Указывает, отображается ли всплывающее меню.

virtual BOOL IsDroppedDown() const;

Возвращаемое значение

TRUE, если кнопка меню панели инструментов отображает ее подменю; в противном случае ЗНАЧЕНИЕ FALSE.

CMFCToolBarMenuButton::IsEmptyMenuAllowed

Указывает, отображаются ли элементы меню пустые подменю.

virtual BOOL IsEmptyMenuAllowed() const;

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если платформа открывает подменю из выбранного в данный момент элемента меню, даже если подменю пуста; в противном случае ЗНАЧЕНИЕ FALSE.

Замечания

Платформа вызывает этот метод, когда пользователь пытается открыть подменю из выбранного в данный момент элемента меню. Если подменю пуст и IsEmptyMenuAllowed возвращает значение FALSE, подменю не откроется.

Реализация по умолчанию возвращает FALSE. Переопределите этот метод, чтобы настроить это поведение.

CMFCToolBarMenuButton::IsExclusive

Указывает, находится ли кнопка в монопольном режиме.

virtual BOOL IsExclusive() const;

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если кнопка работает в эксклюзивном режиме; в противном случае ЗНАЧЕНИЕ FALSE.

Замечания

Когда пользователь открывает всплывающее меню для кнопки, а затем перемещает указатель мыши на другую панель инструментов или кнопку меню, всплывающее меню закрывается, если кнопка не находится в эксклюзивном режиме.

Реализация по умолчанию всегда возвращает ЗНАЧЕНИЕ FALSE. Переопределите этот метод в производном классе, если вы хотите включить монопольный режим.

CMFCToolBarMenuButton::IsMenuPaletteMode

Определяет, находится ли раскрывающееся меню в режиме палитры.

BOOL IsMenuPaletteMode() const;

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если включен режим палитры, в противном случае — ЗНАЧЕНИЕ FALSE.

Замечания

Если для кнопки меню задан режим палитры, элементы меню отображаются в нескольких столбцах только с ограниченным количеством строк. Вызовите этот метод, чтобы получить количество строк. Вы можете включить или отключить режим палитры, вызвав CMFCToolBarMenuButton::SetMenuPaletteMode.

CMFCToolBarMenuButton::IsTearOffMenu

Указывает, имеет ли раскрывающееся меню слезоточивый бар.

virtual BOOL IsTearOffMenu() const;

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если кнопка меню панели инструментов имеет слезоточивую панель; в противном случае ЗНАЧЕНИЕ FALSE.

Замечания

Чтобы включить функцию отключения и задать идентификатор отключаемой панели, вызовите CMFCToolBarMenuButton::SetTearOff.

CMFCToolBarMenuButton::m_bAlwaysCallOwnerDraw

Указывает, всегда ли платформа вызывает CFrameWndEx::OnDrawMenuImage при нарисовке кнопки.

static BOOL m_bAlwaysCallOwnerDraw;

Замечания

Если для этой переменной-член задано значение TRUE, кнопка всегда вызывает метод CFrameWndEx::OnDrawMenuImage для отображения изображения на кнопке. Если m_bAlwaysCallOwnerDraw задано значение FALSE, кнопка сама рисует изображение, если изображение предопределено. В противном случае вызывается OnDrawMenuImage.

CMFCToolBarMenuButton::OnAfterCreatePopupMenu

virtual void OnAfterCreatePopupMenu();

Замечания

CMFCToolBarMenuButton::OnBeforeDrag

virtual BOOL OnBeforeDrag() const;

Возвращаемое значение

Замечания

CMFCToolBarMenuButton::OnCalculateSize

virtual SIZE OnCalculateSize(
    CDC* pDC,
    const CSize& sizeDefault,
    BOOL bHorz);

Параметры

[in] PDC
[in] sizeDefault
[in] bHorz

Возвращаемое значение

Замечания

CMFCToolBarMenuButton::OnCancelMode

virtual void OnCancelMode();

Замечания

CMFCToolBarMenuButton::OnChangeParentWnd

virtual void OnChangeParentWnd(CWnd* pWndParent);

Параметры

[in] pWndParent

Замечания

CMFCToolBarMenuButton::OnClick

virtual BOOL OnClick(
    CWnd* pWnd,
    BOOL bDelay = TRUE);

Параметры

[in] pWnd
[in] bDelay

Возвращаемое значение

Замечания

CMFCToolBarMenuButton::OnClickMenuItem

Вызывается платформой, когда пользователь выбирает элемент в раскрывающемся меню.

virtual BOOL OnClickMenuItem();

Возвращаемое значение

FALSE, если платформа должна продолжать обработку элементов меню по умолчанию; в противном случае — ЗНАЧЕНИЕ TRUE. Реализация по умолчанию всегда возвращает ЗНАЧЕНИЕ FALSE.

Замечания

Когда пользователь щелкает пункт меню, платформа выполняет команду, связанную с этим элементом.

Чтобы настроить обработку элемента меню, переопределите OnClickMenuItem класс, производный от CMFCToolBarMenuButton класса. Необходимо также переопределить CFrameWndEx::OnShowPopupMenu и заменить кнопки меню, требующие специальной обработки экземплярами производного класса.

CMFCToolBarMenuButton::OnContextHelp

virtual BOOL OnContextHelp(CWnd* pWnd);

Параметры

[in] pWnd

Возвращаемое значение

Замечания

CMFCToolBarMenuButton::OnDraw

virtual void OnDraw(
    CDC* pDC,
    const CRect& rect,
    CMFCToolBarImages* pImages,
    BOOL bHorz = TRUE,
    BOOL bCustomizeMode = FALSE,
    BOOL bHighlight = FALSE,
    BOOL bDrawBorder = TRUE,
    BOOL bGrayDisabledButtons = TRUE);

Параметры

[in] PDC
[in] rect
[in] pImages
[in] bHorz
[in] bCustomizeMode
[in] bHighlight
[in] bDrawBorder
[in] bGrayDisabledButtons

Замечания

CMFCToolBarMenuButton::OnDrawOnCustomizeList

virtual int OnDrawOnCustomizeList(
    CDC* pDC,
    const CRect& rect,
    BOOL bSelected);

Параметры

[in] PDC
[in] rect
[in] bSelected

Возвращаемое значение

Замечания

CMFCToolBarMenuButton::OpenPopupMenu

Вызывается платформой, когда пользователь открывает раскрывающееся меню кнопки меню панели инструментов.

virtual BOOL OpenPopupMenu(CWnd* pWnd=NULL);

Параметры

pWnd
[in] Указывает окно, которое получает команды раскрывающегося меню. Значение NULL может быть только в том случае, если кнопка меню панели инструментов имеет родительское окно.

Возвращаемое значение

TRUE, когда объект класса CMFCPopupMenu был создан и открыт успешно; в противном случае — FALSE.

Замечания

Эта функция вызывается платформой, когда пользователь открывает раскрывающееся меню из кнопки меню панели инструментов.

CMFCToolBarMenuButton::ResetImageToDefault

virtual void ResetImageToDefault();

Замечания

CMFCToolBarMenuButton::SaveBarState

virtual void SaveBarState();

Замечания

Платформа вызывает этот метод при создании кнопки панели инструментов в результате операции перетаскивания. Этот метод вызывает метод CMFCPopupMenu::SaveState всплывающего меню верхнего уровня, что приводит к повторному созданию его меню родительской кнопки всплывающего меню.

CMFCToolBarMenuButton::Serialize

virtual void Serialize(CArchive& ar);

Параметры

[in] ar

Замечания

CMFCToolBarMenuButton::SetACCData

Задает данные специальных возможностей для элемента ленты.

virtual BOOL SetACCData(
    CWnd* pParent,
    CAccessibilityData& data);

Параметры

pParent
Родительское окно для элемента ленты.

data
Данные специальных возможностей для элемента ленты.

Возвращаемое значение

Всегда возвращает значение TRUE.

Замечания

По умолчанию этот метод задает данные специальных возможностей для элемента ленты и всегда возвращает ЗНАЧЕНИЕ TRUE. Переопределите этот метод, чтобы задать данные специальных возможностей и возвращать значение, указывающее на успешное или неуспешное выполнение.

CMFCToolBarMenuButton::SetMenuOnly

Указывает, рисуется ли кнопка в виде кнопки меню или разделенной кнопки при наличии допустимого идентификатора команды и подменю.

void SetMenuOnly(BOOL bMenuOnly);

Параметры

bMenuOnly
[in] Значение TRUE, чтобы отобразить эту кнопку в виде кнопки меню, если она имеет допустимый идентификатор команды и подменю, false, чтобы отобразить эту кнопку как разделяющую кнопку, если она имеет допустимый идентификатор команды и подменю.

Замечания

Как правило, если кнопка меню панели инструментов содержит как подменю, так и идентификатор команды, меню, как представляется, является разделительной кнопкой с главной кнопкой и прикрепленной кнопкой стрелки вниз. При вызове этого метода и bMenuOnly имеет значение TRUE, вместо этого кнопка будет одной кнопкой меню со стрелкой вниз в кнопке. Когда пользователь щелкает стрелку в любом режиме, откроется подменю, и когда пользователь щелкает часть кнопки без стрелки в любом режиме, платформа выполняет команду.

CMFCToolBarMenuButton::SetMenuPaletteMode

Указывает, находится ли раскрывающееся меню в режиме палитры.

void SetMenuPaletteMode(
    BOOL bMenuPaletteMode=TRUE,
    int nPaletteRows=1);

Параметры

bMenuPaletteMode
[in] Указывает, находится ли раскрывающееся меню в режиме палитры.

nPaletteRows
[in] Количество строк в палитре.

Замечания

В режиме палитры все элементы меню отображаются в виде многоклумной палитры. Вы указываете количество строк с помощью nPaletteRows.

CMFCToolBarMenuButton::SetMessageWnd

void SetMessageWnd(CWnd* pWndMessage);

Параметры

[in] pWndMessage

Замечания

CMFCToolBarMenuButton::SetRadio

Задает кнопку меню панели инструментов, чтобы отобразить значок стиля переключателя при проверке.

virtual void SetRadio();

Замечания

Когда кнопка меню нарисована во время проверки, она вызывает CMFCVisualManager::OnDrawMenuCheck , чтобы нарисовать значок флажка. По умолчанию запрашивает, OnDrawMenuCheck чтобы текущий визуальный менеджер нарисовал флажок стиля флажка на кнопке меню. После вызова этого метода текущий визуальный менеджер вместо этого рисует флажок стиля переключателя на кнопке меню. Это изменение невозможно отменить.

При вызове этого метода и в настоящее время отображается кнопка меню, она обновится.

CMFCToolBarMenuButton::SetTearOff

Указывает идентификатор отключаемой панели для раскрывающегося меню.

virtual void SetTearOff(UINT uiBarID);

Параметры

uiBarID
[in] Задает новый идентификатор отключаемой панели.

Замечания

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

Вызовите CWinAppEx::EnableTearOffMenus , чтобы включить функцию отключаемого меню в приложении.

См. также

Диаграмма иерархии
Классы
Класс CMFCToolBarButton
Класс CMFCToolBar
Класс CMFCPopupMenu