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


Класс CMFCDropDownToolBar

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

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

Синтаксис

class CMFCDropDownToolBar : public CMFCToolBar

Участники

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

Имя Описание
CMFCDropDownToolBar::AllowShowOnPaneMenu (Переопределяет CPane::AllowShowOnPaneMenu.)
CMFCDropDownToolBar::LoadBitmap (Переопределения CMFCToolBar::LoadBitmap.)
CMFCDropDownToolBar::LoadToolBar (Переопределения CMFCToolBar::LoadToolBar.)
CMFCDropDownToolBar::OnLButtonUp
CMFCDropDownToolBar::OnMouseMove
CMFCDropDownToolBar::OnSendCommand (Переопределяет CMFCToolBar::OnSendCommand.)
CMFCDropDownToolBar::OnUpdateCmdUI (Переопределения CMFCToolBar::OnUpdateCmdUI.

Замечания

Объект CMFCDropDownToolBar объединяет внешний вид панели инструментов с поведением всплывающего меню. Когда пользователь нажимает и удерживает кнопку раскрывающегося списка (см . класс CMFCDropDownToolbarButton), появится раскрывающийся список, а пользователь может выбрать кнопку на раскрывающейся панели инструментов, прокрутив его и отпустив кнопку мыши. После нажатия кнопки на панели инструментов раскрывающегося списка эта кнопка отображается как текущая кнопка на панели инструментов верхнего уровня.

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

На следующем рисунке CMFCDropDownToolBar показан объект:

Example of CMFCDropDownToolbar.

Объект создается так же, как вы создаете CMFCDropDownToolBar обычную панель инструментов (см . класс CMFCToolBar).

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

  1. Зарезервировать фиктивный идентификатор ресурса для кнопки в родительском ресурсе панели инструментов.

  2. CMFCDropDownToolBarButton Создайте объект, содержащий раскрывающийся список инструментов (дополнительные сведения см. в разделе CMFCDropDownToolbarButton::CMFCDropDownToolbarButton).

  3. Замените фиктивную кнопку CMFCDropDownToolBarButton объектом с помощью CMFCToolBar::ReplaceButton.

Дополнительные сведения о кнопках панели инструментов см. в пошаговом руководстве. Добавление элементов управления на панели инструментов. Пример раскрывающейся панели инструментов см. в примере проекта VisualStudioDemo.

Пример

В следующем примере показано, как использовать Create метод в CMFCDropDownToolBar классе. Этот фрагмент кода является частью примера демонстрации Visual Studio.

CMFCDropDownToolBar m_wndToolbarResource;
// Create Resource toolbar:
// The this pointer points to CMainFrame class which extends the CMDIFrameWndEx class
if (!m_wndToolbarResource.Create(this, WS_CHILD | CBRS_TOP | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_HIDE_INPLACE | CBRS_SIZE_DYNAMIC | CBRS_GRIPPER | CBRS_BORDER_3D, IDR_TOOLBAR_RESOURCE) || !m_wndToolbarResource.LoadToolBar(IDR_TOOLBAR_RESOURCE))
{
   TRACE0("Failed to create build toolbar\n");
   return FALSE;      // fail to create
}

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

CObject

CCmdTarget

CWnd

Cbasepane

Cpane

CMFCBaseToolBar

CMFCToolBar

CMFCDropDownToolBar

Требования

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

CMFCDropDownToolBar::AllowShowOnPaneMenu

virtual BOOL AllowShowOnPaneMenu() const;

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

Замечания

CMFCDropDownToolBar::LoadBitmap

Загружает изображения значков панели инструментов из ресурсов приложения.

virtual BOOL LoadBitmap(
    UINT uiResID,
    UINT uiColdResID=0,
    UINT uiMenuResID=0,
    BOOL bLocked=FALSE,
    UINT uiDisabledResID=0,
    UINT uiMenuDisabledResID=0);

Параметры

uiResID
[in] Идентификатор ресурса растрового изображения, который ссылается на изображения горячей панели инструментов.

uiColdResID
[in] Идентификатор ресурса растрового изображения, который ссылается на изображения холодной панели инструментов.

uiMenuResID
[in] Идентификатор ресурса растрового изображения, который ссылается на обычные изображения меню.

Заблокирован
[in] ЗНАЧЕНИЕ TRUE для блокировки панели инструментов; в противном случае ЗНАЧЕНИЕ FALSE.

uiDisabledResID
[in] Идентификатор ресурса растрового изображения, который ссылается на отключенные изображения панели инструментов.

uiMenuDisabledResID
[in] Идентификатор ресурса растрового изображения, который ссылается на отключенные изображения меню.

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

Ненулевое значение, если метод выполнен успешно; в противном случае — 0.

Замечания

Метод CMFCToolBar::LoadToolBarEx вызывает этот метод, чтобы загрузить изображения, связанные с панелью инструментов. Переопределите этот метод для выполнения пользовательской загрузки графических ресурсов.

Вызовите метод LoadBitmapEx , чтобы загрузить дополнительные изображения после создания панели инструментов.

CMFCDropDownToolBar::LoadToolBar

virtual BOOL LoadToolBar(
    UINT uiResID,
    UINT uiColdResID = 0,
    UINT uiMenuResID = 0,
    BOOL = FALSE,
    UINT uiDisabledResID = 0,
    UINT uiMenuDisabledResID = 0,
    UINT uiHotResID = 0);

Параметры

[in] uiResID

[in] uiColdResID

[in] uiMenuResID

[in] BOOL

[in] uiDisabledResID

[in] uiMenuDisabledResID

[in] uiHotResID

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

Замечания

CMFCDropDownToolBar::OnLButtonUp

afx_msg void OnLButtonUp(
    UINT nFlags,
    CPoint point);

Параметры

[in] nFlags

[in] Точки

Замечания

CMFCDropDownToolBar::OnMouseMove

afx_msg void OnMouseMove(
    UINT nFlags,
    CPoint point);

Параметры

[in] nFlags

[in] Точки

Замечания

CMFCDropDownToolBar::OnSendCommand

virtual BOOL OnSendCommand(const CMFCToolBarButton* pButton);

Параметры

[in] pButton

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

Замечания

CMFCDropDownToolBar::OnUpdateCmdUI

virtual void OnUpdateCmdUI(
    CFrameWnd* pTarget,
    BOOL bDisableIfNoHndler);

Параметры

[in] pTarget

[in] bDisableIfNoHndler

Замечания

См. также

Диаграмма иерархии
Классы
Класс CMFCToolBar
CMFCToolBar::Create
CMFCToolBar::ReplaceButton
Класс CMFCDropDownToolbarButton
Пошаговое руководство. Размещение элементов управления на панели инструментов