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


Класс CMFCOutlookBarPane

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

Элемент управления, производный от класса CMFCToolBar, который можно вставить в панель Outlook ( класс CMFCOutlookBar). Область панели Outlook содержит столбец больших кнопок. Пользователь может прокрутить список с кнопками вверх и вниз, если он больше области, в которой отображается. Когда пользователь окончательно удаляет область панели Outlook из панели Outlook, она может стать плавающей или прикрепиться к окну основного фрейма.

Синтаксис

class CMFCOutlookBarPane : public CMFCToolBar

Участники

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

Имя Описание
CMFCOutlookBarPane::CMFCOutlookBarPane Конструктор по умолчанию.
CMFCOutlookBarPane::~CMFCOutlookBarPane Деструктор.

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

Имя Описание
CMFCOutlookBarPane::AddButton Добавляет кнопку на панель панели Outlook.
CMFCOutlookBarPane::CanBeAttached Определяет, можно ли закрепить панель на другой панели или в окне кадра. (Переопределения CBasePane::CanBeAttached.)
CMFCOutlookBarPane::CanBeRestored Определяет, может ли система восстановить панель инструментов до исходного состояния после настройки. (Переопределения CMFCToolBar::CanBeRestored.)
CMFCOutlookBarPane::ClearAll Освобождает ресурсы, используемые изображениями в области панели Outlook.
CMFCOutlookBarPane::Create Создает панель панели Outlook.
CMFCOutlookBarPane::CreateObject Используется платформой для создания динамического экземпляра этого типа класса.
CMFCOutlookBarPane::Dock Вызывается платформой для закрепления панели панели Outlook. (Переопределяет CPane::Dock.)
CMFCOutlookBarPane::EnablePageScrollMode Указывает, перемещают ли стрелки прокрутки на панели Outlook список кнопок по странице или по кнопке.
CMFCOutlookBarPane::GetRegularColor Возвращает обычный (не выбранный) цвет текста панели Outlook.
CMFCOutlookBarPane::GetThisClass Используется платформой для получения указателя на объект CRuntimeClass , связанный с этим типом класса.
CMFCOutlookBarPane::IsBackgroundTexture Определяет, загружен ли фоновый образ для панели панели Outlook.
CMFCOutlookBarPane::IsChangeState Определяет, может ли быть закреплена плавающая панель. (Переопределяет CPane::IsChangeState.)
CMFCOutlookBarPane::IsDrawShadedHighlight Определяет, затеняется ли граница кнопки при выделении кнопки и отображается фоновое изображение.
CMFCOutlookBarPane::OnBeforeFloat Вызывается платформой, когда область будет плавать. (Переопределения CPane::OnBeforeFloat.)
CMFCOutlookBarPane::RemoveButton Удаляет кнопку с указанным идентификатором команды.
CMFCOutlookBarPane::RestoreOriginalstate Восстанавливает первоначальное состояние панели инструментов. (Переопределения CMFCToolBar::RestoreOriginalState.)
CMFCOutlookBarPane::SetBackColor Задает цвет фона.
CMFCOutlookBarPane::SetBackImage Задает фоновое изображение.
CMFCOutlookBarPane::SetDefaultState Сбрасывает панель панели Outlook на исходный набор кнопок.
CMFCOutlookBarPane::SetExtraSpace Задает количество пикселей, используемых вокруг кнопок на панели панели Outlook.
CMFCOutlookBarPane::SetTextColor Задает цвета регулярного и выделенного текста на панели панели Outlook.
CMFCOutlookBarPane::SetTransparentColor Задает прозрачный цвет панели панели Outlook.
CMFCOutlookBarPane::SmartUpdate Используется внутренне для обновления панели Outlook. (Переопределяет CMFCToolBar::SmartUpdate.)

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

Имя Описание
CMFCOutlookBarPane::EnableContextMenuItems Указывает, какие пункты контекстного меню отображаются в режиме настройки.
CMFCOutlookBarPane::RemoveAllButtons Удаляет все кнопки из панели панели Outlook. (Переопределения CMFCToolBar::RemoveAllButtons.)

Замечания

Сведения о реализации панели Outlook см. в разделе CMFCOutlookBar Class.

Пример панели Outlook см. в примере проекта OutlookDemo.

Пример

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

CMFCOutlookBarPane m_wndShortcutsPane1;
CImageList images;
images.Create(IDB_SHORTCUTS, 32, 0, RGB(255, 0, 255));

// Create first page:
m_wndShortcutsPane1.Create(&m_wndShortcutsBar, AFX_DEFAULT_TOOLBAR_STYLE, ID_SHORTCUTS_PANE_1);
// The this pointer points to a CMainFrame class which extends the CFrameWnd class
m_wndShortcutsPane1.SetOwner(this);
m_wndShortcutsPane1.EnableTextLabels();
m_wndShortcutsPane1.EnableDocking(CBRS_ALIGN_ANY);
m_wndShortcutsPane1.EnablePageScrollMode();
m_wndShortcutsPane1.SetBackColor(RGB(0, 255, 0));

m_wndShortcutsPane1.AddButton(images.ExtractIcon(0), _T("View 1"), ID_SHORTCUT_1);
m_wndShortcutsPane1.AddButton(images.ExtractIcon(1), _T("View 2"), ID_SHORTCUT_2);
m_wndShortcutsPane1.AddButton(images.ExtractIcon(2), _T("View 3"), ID_SHORTCUT_3);
m_wndShortcutsPane1.AddButton(images.ExtractIcon(3), _T("View 4"), ID_SHORTCUT_4);

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

CObject

CCmdTarget

CWnd

CBasePane

CPane

CMFCBaseToolBar

CMFCToolBar

CMFCOutlookBarPane

Требования

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

CMFCOutlookBarPane::AddButton

Добавляет кнопку на панель панели Outlook.

BOOL AddButton(
    UINT uiImage,
    LPCTSTR lpszLabel,
    UINT iIdCommand,
    int iInsertAt=-1);

BOOL AddButton(
    UINT uiImage,
    UINT uiLabel,
    UINT iIdCommand,
    int iInsertAt=-1);

BOOL AddButton(
    LPCTSTR szBmpFileName,
    LPCTSTR szLabel,
    UINT iIdCommand,
    int iInsertAt=-1);

BOOL AddButton(
    HBITMAP hBmp,
    LPCTSTR lpszLabel,
    UINT iIdCommand,
    int iInsertAt=-1);

BOOL AddButton(
    HICON hIcon,
    LPCTSTR lpszLabel,
    UINT iIdCommand,
    int iInsertAt=-1,
    BOOL bAlphaBlend=FALSE);

Параметры

uiImage
[in] Указывает идентификатор ресурса растрового изображения.

lpszLabel
[in] Задает текст кнопки.

iIdCommand
[in] Указывает идентификатор элемента управления кнопки.

iInsertAt
[in] Указывает отсчитываемый от нуля индекс на странице панели Outlook, на которой следует вставить кнопку.

uiLabel
[in] Строковый идентификатор ресурса.

szBmpFileName
[in] Указывает имя загружаемого файла образа диска.

szLabel
[in] Задает текст кнопки.

hBmp
[in] Дескриптор растрового изображения кнопки.

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

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

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

Замечания

Используйте этот метод, чтобы вставить новую кнопку на страницу панели Outlook. Изображение кнопки можно загрузить из ресурсов приложения или из файла диска.

Если идентификатор страницы, указанный uiPageID , равен -1, кнопка вставляется на первую страницу.

Если индекс, указанный iInsertAt , равен -1, кнопка добавляется в конце страницы.

CMFCOutlookBarPane::CanBeAttached

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

virtual BOOL CanBeAttached() const;

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

Замечания

CMFCOutlookBarPane::ClearAll

Освобождает ресурсы, используемые изображениями на панели панели Outlook.

void ClearAll();

Замечания

Этот метод напрямую вызывает CMFCToolBarImages::Clear, который вызывается на изображениях, используемых панелью панели Outlook.

CMFCOutlookBarPane::Create

Создает панель панели Outlook.

virtual BOOL Create(
    CWnd* pParentWnd,
    DWORD dwStyle=AFX_DEFAULT_TOOLBAR_STYLE,
    UINT uiID=(UINT)-1,
    DWORD dwControlBarStyle=0);

Параметры

pParentWnd
[in] Указывает родительское окно элемента управления панели панели Outlook. Не должно быть NULL.

dwStyle
[in] Стиль окна. Список стилей окон см. в разделе "Стили окон".

uiID
[in] Идентификатор элемента управления. Должен быть уникальным, чтобы обеспечить сохранение состояния элемента управления.

dwControlBarStyle
[in] Задает специальные стили, определяющие поведение элемента управления панели панели Outlook при отключении от панели Outlook.

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

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

Замечания

Чтобы создать CMFCOutlookBarPane объект, сначала вызовите конструктор, а затем вызовите Create, который создает элемент управления панели панели Outlook и присоединяет его к объекту CMFCOutlookBarPane .

Дополнительные сведения см. в dwControlBarStyle разделе CBasePane::CreateEx.

CMFCOutlookBarPane::EnableContextMenuItems

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

virtual BOOL EnableContextMenuItems(
    CMFCToolBarButton* pButton,
    CMenu* pPopup);

Параметры

pButton
[in] Указатель на кнопку панели инструментов, которую пользователь нажал.

pPopup
[in] Указатель на контекстное меню.

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

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

Замечания

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

Реализация по умолчанию проверяет режим настройки ( CMFCToolBar::IsCustomizeMode), а если задано значение TRUE, отключает все контекстные пункты меню, кроме delete. Затем он просто передает входные параметры CMFCToolBar::EnableContextMenuItems.

Примечание.

Контекстное меню является синонимом контекстного меню .

CMFCOutlookBarPane::EnablePageScrollMode

Указывает, перемещают ли стрелки прокрутки на панели Outlook список кнопок по странице или кнопке по кнопке.

void EnablePageScrollMode(BOOL bPageScroll=TRUE);

Параметры

bPageScroll
[in] Если значение TRUE, включите режим прокрутки страницы. Если значение FALSE, отключите режим прокрутки страницы.

CMFCOutlookBarPane::GetRegularColor

Возвращает обычный (т. е. не выбранный) цвет текста панели Outlook.

DECLARE_MESSAGE_MAPCOLORREF GetRegularColor() const;

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

Текущий цвет текста в качестве значения цвета RGB.

Замечания

Используйте CMFCOutlookBarPane::SetTextColor , чтобы задать текущий (обычный и выбранный) цвет текста панели Outlook. Вы можете получить цвет текста по умолчанию, вызвав функцию GetSysColor с индексом COLOR_WINDOW.

CMFCOutlookBarPane::IsBackgroundTexture

Определяет, загружен ли фоновый образ для панели панели Outlook.

BOOL IsBackgroundTexture() const;

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

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

Замечания

Вы можете добавить фоновое изображение, вызвав функцию CMFCOutlookBarPane::SetBackImage .

Если фоновое изображение отсутствует, фон окрашен цветом, указанным с помощью CMFCOutlookBarPane::SetBackColor.

CMFCOutlookBarPane::IsDrawShadedHighlight

Определяет, затеняется ли граница кнопки при выделении кнопки и отображается фоновое изображение.

BOOL IsDrawShadedHighlight() const;

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

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

CMFCOutlookBarPane::RemoveAllButtons

Удаляет все кнопки из панели панели Outlook.

virtual void RemoveAllButtons();

CMFCOutlookBarPane::RemoveButton

Удаляет кнопку с указанным идентификатором команды.

BOOL RemoveButton(UINT iIdCommand);

Параметры

iIdCommand
[in] Указывает идентификатор команды для удаления кнопки.

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

ЗНАЧЕНИЕ TRUE, если кнопка успешно удалена; ЗНАЧЕНИЕ FALSE, если указанный идентификатор команды недопустим.

CMFCOutlookBarPane::SetBackColor

Задает цвет фона панели Outlook.

void SetBackColor(COLORREF color);

Параметры

color
[in] Задает новый цвет фона.

Замечания

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

CMFCOutlookBarPane::SetBackImage

Задает фоновое изображение.

void SetBackImage(UINT uiImageID);

Параметры

uiImageID
[in] Указывает идентификатор ресурса образа.

Замечания

Вызовите этот метод, чтобы задать фоновое изображение панели Outlook. Список фоновых изображений управляется внедренным объектом класса CMFCToolBarImages.

CMFCOutlookBarPane::SetDefaultState

Сбрасывает панель панели Outlook на исходный набор кнопок.

void SetDefaultState();

Замечания

Этот метод восстанавливает кнопки панели Outlook в исходном наборе. Этот метод похож CMFCOutlookBarPane::RestoreOriginalstate, за исключением того, что он не запускает перерисовку панели Outlook.

CMFCOutlookBarPane::SetExtraSpace

Задает количество пикселей, используемых вокруг кнопок на панели панели Outlook.

void SetExtraSpace()

CMFCOutlookBarPane::SetTextColor

Задает цвета регулярного и выделенного текста на панели панели Outlook.

void SetTextColor(
    COLORREF clrRegText,
    COLORREF clrSelText=0);

Параметры

clrRegText
[in] Задает новый цвет для не выделенного текста.

clrSelText
[in] Задает новый цвет выделенного текста.

CMFCOutlookBarPane::SetTransparentColor

Задает прозрачный цвет панели панели Outlook.

void SetTransparentColor(COLORREF color);

Параметры

color
Задает новый прозрачный цвет.

Замечания

Прозрачный цвет необходим для отображения прозрачных изображений. Любое вхождение этого цвета в изображении окрашено цветом фона. Не существует смешивания фоновых и передних изображений.

См. также

Диаграмма иерархии
Классы
Класс CMFCToolBar
Класс CMFCOutlookBar
Класс CMFCOutlookBarTabCtrl