CMFCVisualManager 类

提供在全局级别更改应用程序外观的支持。 CMFCVisualManager 类与说明如何绘制应用程序中 GUI 控件的类一起使用,且使用一致样式。 这些其他类称为视觉管理器,从 CMFCBaseVisualManager继承而来。

有关详细信息,请参阅所安装的 Visual Studio 的 C\atlmfc\src\mfc 文件夹中的源代码。

语法

class CMFCVisualManager : public CMFCBaseVisualManager

成员

公共构造函数

名称 描述
CMFCVisualManager::CMFCVisualManager 默认构造函数。

公共方法

名称 描述
CMFCVisualManager::AdjustFrames
CMFCVisualManager::AdjustToolbars
CMFCVisualManager::AlwaysHighlight3DTabs 由框架调用,以确定是否应始终使用突出显示颜色绘制 3D 选项卡。
CMFCVisualManager::DestroyInstance
CMFCVisualManager::DoDrawHeaderSortArrow
CMFCVisualManager::DrawComboDropButtonWinXP
CMFCVisualManager::DrawPushButtonWinXP
CMFCVisualManager::DrawTextOnGlass
CMFCVisualManager::GetAutoHideButtonTextColor 由框架调用,以检索自动隐藏按钮的文本颜色。
CMFCVisualManager::GetButtonExtraBorder 由框架调用,以检索当前虚拟管理器在绘制按钮时所需的已增加按钮大小。
CMFCVisualManager::GetCaptionBarTextColor 由框架调用,以检索标题栏的文本颜色。
CMFCVisualManager::GetDockingTabsBordersSize 由框架调用,以检索选项卡式停靠条的边框的大小。
CMFCVisualManager::GetHighlightedMenuItemTextColor
CMFCVisualManager::GetInstance 返回指向 CMFCVisualManager 对象的指针。
CMFCVisualManager::GetMDITabsBordersSize 由框架调用,以检索 MDITabs 窗口的边框大小。
CMFCVisualManager::GetMenuItemTextColor
CMFCVisualManager::GetMenuShadowDepth 返回一个值,该值确定菜单阴影的宽度和高度。
CMFCVisualManager::GetNcBtnSize 由框架调用,以确定基于当前虚拟管理器的系统按钮的大小。 系统按钮是主框架的标题栏中的按钮,映射到“关闭”、“最小化”、“最大化”和“还原”命令。
CMFCVisualManager::GetPopupMenuBorderSize 由框架调用,以检索弹出菜单的边框大小。
CMFCVisualManager::GetPropertyGridGroupColor 由框架调用,以检索属性列表的背景色。
CMFCVisualManager::GetPropertyGridGroupTextColor 由框架调用,以检索属性列表的文本颜色。
CMFCVisualManager::GetRibbonHyperlinkTextColor
CMFCVisualManager::GetRibbonPopupBorderSize
CMFCVisualManager::GetRibbonQuickAccessToolBarTextColor
CMFCVisualManager::GetRibbonSliderColors
CMFCVisualManager::GetShowAllMenuItemsHeight
CMFCVisualManager::GetSmartDockingBaseGuideColors
CMFCVisualManager::GetSmartDockingHighlightToneColor
CMFCVisualManager::GetSmartDockingTheme 返回用于显示智能停靠标记的主题。
CMFCVisualManager::GetStatusBarPaneTextColor
CMFCVisualManager::GetTabFrameColors 由框架调用,以检索要在绘制选项卡框架时使用的颜色集。
CMFCVisualManager::GetTabTextColor
CMFCVisualManager::GetToolbarButtonTextColor 由框架调用,以检索工具栏按钮上的文本的当前颜色。 此颜色因当前的虚拟管理器和按钮状态而异。
CMFCVisualManager::GetToolbarDisabledTextColor 由框架调用,以确定已禁用工具栏元素上显示的文本的颜色。
CMFCVisualManager::GetToolbarHighlightColor
CMFCVisualManager::GetToolTipInfo
CMFCVisualManager::HasOverlappedAutoHideButtons 指定自动隐藏按钮是否重叠。
CMFCVisualManager::IsDockingTabHasBorder 指定当前虚拟管理器是否在选项卡式停靠条周围绘制边框。
CMFCVisualManager::IsEmbossDisabledImage 指定是否应以浮雕形式显示已禁用图像。
CMFCVisualManager::IsFadeInactiveImage 由框架调用,以确定工具栏或菜单上的非活动图像是否显示为灰色。
CMFCVisualManager::IsMenuFlatLook 指定菜单按钮是否具有平展的外观。
CMFCVisualManager::IsOfficeXPStyleMenus 指定虚拟管理器是否实现 Office XP 样式菜单。
CMFCVisualManager::IsOwnerDrawCaption 指定当前虚拟管理器是否实现框架窗口的所有者绘制标题栏。
CMFCVisualManager::IsShadowHighlightedImage 指定突出显示的图像是否具有阴影。
CMFCVisualManager::OnDrawAutoHideButtonBorder 由框架在绘制自动隐藏按钮的边框时调用。
CMFCVisualManager::OnDrawBarGripper 由框架在绘制控件条的手柄时调用。 用户必须单击手柄才能移动控件条。
CMFCVisualManager::OnDrawBrowseButton 由框架在绘制属于编辑控件(CMFCEditBrowseCtrl 类)的浏览按钮时调用。
CMFCVisualManager::OnDrawButtonBorder 由框架在绘制工具栏按钮的边框时调用。
CMFCVisualManager::OnDrawButtonSeparator
CMFCVisualManager::OnDrawCaptionBarBorder 由框架在绘制标题栏边框时调用。
CMFCVisualManager::OnDrawCaptionBarButtonBorder
CMFCVisualManager::OnDrawCaptionBarInfoArea
CMFCVisualManager::OnDrawCaptionButton 由框架在绘制标题按钮时调用。
CMFCVisualManager::OnDrawCheckBox
CMFCVisualManager::OnDrawCheckBoxEx
CMFCVisualManager::OnDrawComboBorder 由框架在绘制组合框按钮的边框时调用。
CMFCVisualManager::OnDrawComboDropButton 由框架在绘制组合框放置按钮时调用。
CMFCVisualManager::OnDrawControlBorder
CMFCVisualManager::OnDrawDefaultRibbonImage 由框架在绘制默认功能区图像时调用。
CMFCVisualManager::OnDrawEditBorder 由框架在 CMFCToolBarEditBoxButton 对象周围绘制边框时调用。
CMFCVisualManager::OnDrawExpandingBox
CMFCVisualManager::OnDrawFloatingToolbarBorder 由框架在绘制浮动工具栏的边框时调用。 浮动工具栏是显示为微型框窗口的工具栏。
CMFCVisualManager::OnDrawHeaderCtrlBorder 由框架在绘制包含标题控件的边框时调用。
CMFCVisualManager::OnDrawHeaderCtrlSortArrow 由框架在绘制标题控件排序箭头时调用。
CMFCVisualManager::OnDrawMenuArrowOnCustomizeList
CMFCVisualManager::OnDrawMenuBorder 由框架在绘制菜单边框时调用。
CMFCVisualManager::OnDrawMenuCheck
CMFCVisualManager::OnDrawMenuItemButton
CMFCVisualManager::OnDrawMenuLabel
CMFCVisualManager::OnDrawMenuResizeBar
CMFCVisualManager::OnDrawMenuScrollButton 由框架在绘制菜单滚动按钮时调用。
CMFCVisualManager::OnDrawMenuShadow
CMFCVisualManager::OnDrawMenuSystemButton 由框架在绘制菜单系统按钮“关闭”、“最小化”、“最大化”和“还原”时调用。
CMFCVisualManager::OnDrawMiniFrameBorder
CMFCVisualManager::OnDrawOutlookBarSplitter 由框架在绘制 Outlook 栏的拆分器时调用。 拆分器是用于对控件进行分组的水平条。
CMFCVisualManager::OnDrawOutlookPageButtonBorder 由框架在绘制 Outlook 页面按钮的边框时进行调用。 如果 Outlook 栏窗格包含的按钮多于可以显示的按钮,则会出现 Outlook 页面按钮。
CMFCVisualManager::OnDrawPaneBorder 由框架在绘制 CPane 类的边框时调用。
CMFCVisualManager::OnDrawPaneCaption 由框架在绘制 CPane 的标题栏时调用。
CMFCVisualManager::OnDrawPaneDivider
CMFCVisualManager::OnDrawPopupWindowBorder
CMFCVisualManager::OnDrawPopupWindowButtonBorder
CMFCVisualManager::OnDrawPopupWindowCaption
CMFCVisualManager::OnDrawRibbonApplicationButton 当框架在功能区上绘制主按钮时调用。
CMFCVisualManager::OnDrawRibbonButtonBorder 由框架在绘制功能区按钮的边框时调用。
CMFCVisualManager::OnDrawRibbonButtonsGroup 由框架在功能区上绘制一组按钮时调用。
CMFCVisualManager::OnDrawRibbonCaption 由框架在绘制主框架的标题栏时调用,但前提是功能区栏与框架集成。
CMFCVisualManager::OnDrawRibbonCaptionButton 由框架在绘制功能区栏上的标题按钮时调用。
CMFCVisualManager::OnDrawRibbonCategory 由框架在绘制功能区类别时调用。
CMFCVisualManager::OnDrawRibbonCategoryCaption 由框架在绘制功能区类别的标题栏时调用。
CMFCVisualManager::OnDrawRibbonCategoryScroll
CMFCVisualManager::OnDrawRibbonCategoryTab 由框架在绘制功能区类别的选项卡时调用。
CMFCVisualManager::OnDrawRibbonCheckBoxOnList
CMFCVisualManager::OnDrawRibbonColorPaletteBox
CMFCVisualManager::OnDrawRibbonDefaultPaneButtonContext
CMFCVisualManager::OnDrawRibbonDefaultPaneButton 当框架在绘制功能区窗格默认按钮时调用。 默认按钮在用户收缩功能区面板时显示,因此会因太小而无法显示功能区元素。 默认按钮将改为绘制,功能区元素将添加为下拉菜单上的项。
CMFCVisualManager::OnDrawRibbonDefaultPaneButtonIndicator
CMFCVisualManager::OnDrawRibbonGalleryBorder
CMFCVisualManager::OnDrawRibbonGalleryButton
CMFCVisualManager::OnDrawRibbonKeyTip
CMFCVisualManager::OnDrawRibbonLabel 由框架在绘制功能区标签时调用。
CMFCVisualManager::OnDrawRibbonMainPanelButtonBorder 由框架在绘制主面板上的功能区按钮的边框时调用。 主面板是当用户单击主按钮时显示的面板。
CMFCVisualManager::OnDrawRibbonMainPanelFrame 由框架在主面板周围绘制框架时调用。
CMFCVisualManager::OnDrawRibbonMenuCheckFrame
CMFCVisualManager::OnDrawRibbonPanel 由框架在绘制功能区面板时调用。
CMFCVisualManager::OnDrawRibbonPanelCaption 由框架在绘制功能区面板的标题栏时调用。
CMFCVisualManager::OnDrawRibbonProgressBar 由框架在绘制 CMFCRibbonProgressBar 对象时调用。
CMFCVisualManager::OnDrawRibbonQuickAccessToolBarSeparator 由框架在功能区的快速访问工具栏上绘制分隔符时调用。
CMFCVisualManager::OnDrawRibbonRecentFilesFrame 由框架在围绕最近的文件列表绘制框架时调用。
CMFCVisualManager::OnDrawRibbonSliderChannel 由框架在绘制 CMFCRibbonSlider 对象的通道时调用。
CMFCVisualManager::OnDrawRibbonSliderThumb 由框架在绘制 CMFCRibbonSlider 对象的缩略图时调用。
CMFCVisualManager::OnDrawRibbonSliderZoomButton 由框架在绘制 CMFCRibbonSlider 对象的缩放按钮时调用。
CMFCVisualManager::OnDrawRibbonStatusBarPane 由框架在绘制功能区的状态栏窗格时调用。
CMFCVisualManager::OnDrawRibbonTabsFrame 由框架在围绕一组功能区选项卡绘制框架时调用。
CMFCVisualManager::OnDrawScrollButtons
CMFCVisualManager::OnDrawSeparator 由框架在绘制分隔符时调用。 分隔符通常用在控件条上,用于分隔图标组。
CMFCVisualManager::OnDrawShowAllMenuItems
CMFCVisualManager::OnDrawSpinButtons 由框架在绘制数值调节钮时调用。
CMFCVisualManager::OnDrawSplitterBorder 由框架在绘制拆分窗口的边框时调用。
CMFCVisualManager::OnDrawSplitterBox 由框架在绘制拆分窗口的拆分器拖动框时调用。
CMFCVisualManager::OnDrawStatusBarPaneBorder 由框架在绘制状态栏窗格的边框时调用。
CMFCVisualManager::OnDrawStatusBarProgress 由框架在绘制状态栏进度指示器时调用。
CMFCVisualManager::OnDrawStatusBarSizeBox 由框架在绘制状态栏大小框时调用。
CMFCVisualManager::OnDrawTab 由框架在绘制 CMFCTabCtrl 对象时调用。
CMFCVisualManager::OnDrawTabCloseButton 由框架在活动选项卡上绘制“关闭”按钮时调用。
CMFCVisualManager::OnDrawTabContent 由框架在绘制选项卡内部内容(图像、文本)时调用。
CMFCVisualManager::OnDrawTabsButtonBorder 由框架在绘制选项卡按钮的边框时调用。
CMFCVisualManager::OnDrawTask 由框架在任务窗格上绘制任务时调用。
CMFCVisualManager::OnDrawTasksGroupAreaBorder 由框架在任务窗格上的组区域周围绘制边框时调用。
CMFCVisualManager::OnDrawTasksGroupCaption 由框架在任务窗格上绘制任务组的标题栏时调用。
CMFCVisualManager::OnDrawTasksGroupIcon
CMFCVisualManager::OnDrawTearOffCaption 由框架在为拖曳栏绘制拖曳标题栏时调用。
CMFCVisualManager::OnDrawToolBoxFrame
CMFCVisualManager::OnEraseMDIClientArea 由框架在擦除 MDI 工作区时调用。
CMFCVisualManager::OnErasePopupWindowButton
CMFCVisualManager::OnEraseTabsArea 由框架在擦除选项卡窗口中的选项卡区域时调用。
CMFCVisualManager::OnEraseTabsButton 由框架在擦除选项卡按钮的图标和文本时调用。
CMFCVisualManager::OnEraseTabsFrame 由框架在擦除选项卡框架时调用。
CMFCVisualManager::OnFillAutoHideButtonBackground 由框架在填充自动隐藏按钮的背景时调用。
CMFCVisualManager::OnFillBarBackground 由框架在填充控件条的背景时调用。
CMFCVisualManager::OnFillButtonInterior 由框架在填充工具栏按钮的背景时调用。
CMFCVisualManager::OnFillCaptionBarButton
CMFCVisualManager::OnFillCommandsListBackground 由框架在填充属于命令列表的工具栏按钮的背景时调用,而该列表又属于自定义对话框的一部分。
CMFCVisualManager::OnFillHeaderCtrlBackground 由框架在填充标题控件的背景时调用。
CMFCVisualManager::OnFillMiniFrameCaption 由框架在填充微型框窗口的标题栏时调用。
CMFCVisualManager::OnFillOutlookBarCaption 由框架在填充 Outlook 栏标题栏的背景时调用。
CMFCVisualManager::OnFillOutlookPageButton 由框架在填充 Outlook 页面按钮的内部时调用。
CMFCVisualManager::OnFillPopupWindowBackground 由框架在填充弹出窗口的背景时调用。
CMFCVisualManager::OnFillRibbonButton 由框架在填充功能区按钮的内部时调用。
CMFCVisualManager::OnFillRibbonEdit 由框架在填充功能区编辑控件的内部时调用。
CMFCVisualManager::OnFillRibbonMainPanelButton 由框架在填充主面板上的功能区按钮的内部时调用。
CMFCVisualManager::OnFillRibbonMenuFrame 由框架在填充主功能区面板的菜单框架时调用。
CMFCVisualManager::OnFillRibbonQuickAccessToolBarPopup
CMFCVisualManager::OnFillSplitterBackground 由框架在填充拆分窗口的背景时调用。
CMFCVisualManager::OnFillTab 由框架在填充选项卡的背景时调用。
CMFCVisualManager::OnFillTasksGroupInterior 由框架在 CMFCTasksPane 上填充 CMFCTasksPaneTaskGroup 对象的内部时调用。
CMFCVisualManager::OnFillTasksPaneBackground 由框架在填充 CMFCTasksPane 控件的背景时调用。
CMFCVisualManager::OnHighlightMenuItem 由框架在绘制突出显示的菜单项时调用。
CMFCVisualManager::OnHighlightRarelyUsedMenuItems 由框架在绘制突出显示但很少使用的菜单项时调用。
CMFCVisualManager::OnNcPaint 由框架在绘制非工作区时调用。
CMFCVisualManager::OnSetWindowRegion 由框架在设置包含框架和弹出菜单的区域时调用。
CMFCVisualManager::OnUpdateSystemColors 由框架在更改系统颜色设置时调用。
CMFCVisualManager::RedrawAll 重绘应用程序中的所有控件条。
CMFCVisualManager::RibbonCategoryColorToRGB
CMFCVisualManager::SetDefaultManager 设置默认虚拟管理器。
CMFCVisualManager::SetEmbossDisabledImage 启用或禁用已禁用工具栏图像的浮雕模式。
CMFCVisualManager::SetFadeInactiveImage 启用或禁用菜单或工具栏上非活动图像的照明效果。
CMFCVisualManager::SetMenuFlatLook 设置一个标志,指示应用程序菜单按钮是否具有平展的外观。
CMFCVisualManager::SetMenuShadowDepth 设置菜单阴影的宽度和高度。
CMFCVisualManager::SetShadowHighlightedImage 设置一个标志,指示在呈现突出显示的图像时是否显示阴影。

备注

由于 CMFCVisualManager 类控制应用程序的 GUI,因此每个应用程序都可以有一个 CMFCVisualManager 实例或一个派生自 CMFCVisualManager 的类的实例。 应用程序还可以在没有 CMFCVisualManager 的情况下正常运行。 使用静态方法 GetInstance 获取指向当前的 CMFCVisualManager 派生对象的指针。

若要更改应用程序的外观,必须使用其他类,这些类提供用于绘制应用程序的所有视觉元素的方法。 这些类的一些示例包括:CMFCVisualManagerOfficeXP 类CMFCVisualManagerOffice2003 类CMFCVisualManagerOffice2007 类。 若要更改应用程序的外观,请将这些虚拟管理器之一传递到方法 SetDefaultManager 中。 有关演示应用程序如何模拟 Microsoft Office 2003 外观的示例,请参阅 CMFCVisualManagerOffice2003 类

所有绘制方法都是虚拟的。 这样便可以为应用程序的 GUI 创建自定义视觉样式。 如果要创建自己的视觉样式,请从虚拟管理器类之一派生一个类,并替代要更改的绘制方法。

示例

此示例演示如何实例化标准和自定义 CMFCVisualManager 对象。

void CMFCSkinsApp::SetSkin (int iIndex)
{   // destroy the current visual manager
    if (CMFCVisualManager::GetInstance () != NULL)
    {
        delete CMFCVisualManager::GetInstance ();
    }
    switch (iIndex)
    {
    case 0:
        CMFCVisualManager::GetInstance ();
        // create the standard visual manager
        break;
    case 1:
        new CMyVisualManager ();
        // create the first custom visual manager
        break;
    case 2:
        new CMacStyle ();
        // create the second custom visual manager
        break;
    }
    // access the manager and set it properly
    CMFCVisualManager::GetInstance ()->SetLook2000 ();
    CMFCVisualManager::GetInstance ()->RedrawAll ();
}

以下示例演示如何检索 CMFCVisualManager 对象的默认值。 此代码片段是任务窗格示例的一部分。

int m_nVMargin;
int m_nHMargin;
int m_nGroupSpacing;
int m_nTaskSpacing;
int m_nCaptionHeight;
int m_nTaskOffset;
int m_nIconOffset;

继承层次结构

CObject

CMFCBaseVisualManager

CMFCVisualManager

要求

标头:afxvisualmanager.h

CMFCVisualManager::AdjustFrames

static void __stdcall AdjustFrames();

注解

CMFCVisualManager::AdjustToolbars

static void __stdcall AdjustToolbars();

备注

CMFCVisualManager::AlwaysHighlight3DTabs

框架调用此方法以确定是否应始终在应用程序中突出显示 3D 选项卡。

virtual BOOL AlwaysHighlight3DTabs() const;

返回值

TRUE(如果应突出显示 3D 选项卡)。

备注

在派生的虚拟管理器中替代此函数。如果应始终突出显示 3D 选项卡,则返回 TRUE。 此方法的默认实现返回 FALSE。

CMFCVisualManager::CMFCVisualManager

CMFCVisualManager(BOOL bTemporary = FALSE);

参数

[in] bTemporary

备注

CMFCVisualManager::DestroyInstance

static void __stdcall DestroyInstance(BOOL bAutoDestroyOnly = FALSE);

参数

[in] bAutoDestroyOnly

备注

CMFCVisualManager::DoDrawHeaderSortArrow

void DoDrawHeaderSortArrow(
    CDC* pDC,
    CRect rect,
    BOOL bIsUp,
    BOOL bDlgCtrl);

参数

[in] pDC
[in] rect
[in] bIsUp
[in] bDlgCtrl

备注

CMFCVisualManager::DrawComboBorderWinXP

virtual BOOL DrawComboBorderWinXP(CDC*,
    CRect,
    BOOL,
    BOOL,
    BOOL);

参数

[in] CDC*
[in] CRect
[in] BOOL

返回值

备注

CMFCVisualManager::DrawComboDropButtonWinXP

virtual BOOL DrawComboDropButtonWinXP(CDC*,
    CRect,
    BOOL,
    BOOL,
    BOOL);

参数

[in] CDC*
[in] CRect
[in] BOOL

返回值

备注

CMFCVisualManager::DrawPushButtonWinXP

virtual BOOL DrawPushButtonWinXP(CDC*,
    CRect,
    CMFCButton*,
    UINT);

参数

[in] CDC*
[in] CRect
[in] CMFCButton*
[in] UINT

返回值

备注

CMFCVisualManager::DrawTextOnGlass

virtual BOOL DrawTextOnGlass(
    CDC* pDC,
    CString strText,
    CRect rect,
    DWORD dwFlags,
    int nGlowSize = 0,
    COLORREF clrText = (COLORREF)-1);

参数

[in] pDC
[in] strText
[in] rect
[in] dwFlags
[in] nGlowSize
[in] clrText

返回值

备注

CMFCVisualManager::EnableToolbarButtonFill

void EnableToolbarButtonFill(BOOL bEnable = TRUE);

参数

[in] bEnable

备注

CMFCVisualManager::GetAutoHideButtonTextColor

框架调用此方法来检索自动隐藏按钮的文本颜色。

virtual COLORREF GetAutoHideButtonTextColor(CMFCAutoHideButton* pButton);

参数

pButton
[in] 一个指向自动隐藏按钮的指针。

返回值

一个 COLORREF 参数,指定 pButton 的文本颜色。

注解

在派生类中替代此方法,以自定义应用程序中自动隐藏按钮的文本颜色。 为此,请返回希望应用程序用作文本颜色的颜色。

CMFCVisualManager::GetButtonExtraBorder

框架在绘制工具栏按钮时调用此方法。

virtual CSize GetButtonExtraBorder() const;

返回值

一个包含工具栏按钮边框的额外大小的 CSize 对象。

注解

某些外观必须扩展工具栏按钮的边框。 在自定义虚拟管理器中替代此方法,以扩展应用程序中工具栏按钮的边框。 此方法的默认实现返回空大小。

CMFCVisualManager::GetCaptionBarTextColor

框架调用此方法以检索标题栏中文本的颜色。

virtual COLORREF GetCaptionBarTextColor(CMFCCaptionBar* pBar);

参数

pBar
[in] 一个指向标题栏的指针。

返回值

一个 COLORREF 参数,指示 pBar 中的文本的颜色。

备注

替代派生类中的此方法,以自定义标题栏的文本颜色。 在替代的方法中,返回所需的颜色。

CMFCVisualManager::GetCaptionButtonExtraBorder

virtual CSize GetCaptionButtonExtraBorder() const;

返回值

备注

CMFCVisualManager::GetDockingPaneCaptionExtraHeight

virtual int GetDockingPaneCaptionExtraHeight() const;

返回值

备注

CMFCVisualManager::GetDockingTabsBordersSize

框架在绘制选项卡式停靠窗格时调用此方法。

virtual int GetDockingTabsBordersSize();

返回值

一个整数,指示选项卡式停靠窗格的边框大小。

备注

当用户将多个窗格停靠到应用程序中的同一位置时,停靠窗格会变得选项卡化。

在自定义虚拟管理器中替代此方法,以更改选项卡式停靠控件条的边框大小。 默认实现将返回 -1。

CMFCVisualManager::GetHighlightedMenuItemTextColor

virtual COLORREF GetHighlightedMenuItemTextColor(CMFCToolBarMenuButton* pButton);

参数

[in] pButton

返回值

注解

CMFCVisualManager::GetInstance

返回一个指向应用程序的当前 CMFCVisualManager 类对象的指针。

static CMFCVisualManager* GetInstance();

返回值

一个指向 CMFCVisualManager 对象的指针。

备注

一个应用程序只能有一个与之关联的 CMFCVisualManager 对象。 这包括任何派生自 CMFCVisualManager 类的对象。 此方法返回一个指向关联的 CMFCVisualManager 对象的指针。 如果应用程序没有关联的 CMFCVisualManager 对象,此方法将创建一个对象并将其与应用程序相关联。

CMFCVisualManager::GetMDITabsBordersSize

该框架调用此方法以在绘制 MDITabs 窗口前确定该窗口的边框大小。

virtual int GetMDITabsBordersSize();

返回值

MDITabs 窗口的边框大小。

注解

替代派生类中的此函数以自定义 MDITabs 窗口的边框大小。

CMFCVisualManager::GetMenuImageMargin

virtual int GetMenuImageMargin() const;

返回值

注解

CMFCVisualManager::GetMenuItemTextColor

virtual COLORREF GetMenuItemTextColor(
    CMFCToolBarMenuButton* pButton,
    BOOL bHighlighted,
    BOOL bDisabled);

参数

[in] pButton
[in] bHighlighted
[in] bDisabled

返回值

备注

CMFCVisualManager::GetMenuShadowDepth

检索菜单阴影的宽度和高度。

int GetMenuShadowDepth() const;

返回值

菜单阴影的宽度和高度(以像素为单位)。

注解

菜单阴影的宽度和高度相等。 默认值为 7 像素。

CMFCVisualManager::GetNcBtnSize

由框架在必须检索系统按钮的大小时调用。

virtual CSize GetNcBtnSize(BOOL bSmall) const;

参数

bSmall
[in] 一个布尔参数,指示 GetNcBtnSize 是否应检索小型或大型系统按钮的大小。 如果 bSmall 为 TRUE,GetNcBtnSize 会返回小型系统按钮的大小。 否则,它会返回大型系统按钮的大小。

返回值

一个 CSize 参数,指示系统按钮的大小。

备注

系统按钮是框架窗口的标题栏中的按钮,映射到“关闭”、“最小化”、“最大化”和“还原”命令。 这些按钮的大小取决于当前的虚拟管理器。 如果要自定义应用程序中系统按钮的大小,请替代此方法。

CMFCVisualManager::GetPopupMenuBorderSize

框架调用此方法以获取弹出菜单的边框大小。

virtual int GetPopupMenuBorderSize() const;

返回值

一个整数,指定弹出菜单的边框大小。

注解

替代此方法以自定义应用程序中弹出菜单的边框大小。

CMFCVisualManager::GetPopupMenuGap

virtual int GetPopupMenuGap() const;

返回值

备注

CMFCVisualManager::GetPropertyGridGroupColor

框架调用此方法来获取属性列表的背景色。

virtual COLORREF GetPropertyGridGroupColor(CMFCPropertyGridCtrl* pPropList);

参数

pPropList
[in] 一个指向框架正在绘制的属性列表的指针。

返回值

一个 COLORREF 参数,指示 pPropList 的背景色。

备注

替代此函数以自定义应用程序中属性列表的背景色。

CMFCVisualManager::GetPropertyGridGroupTextColor

框架调用此方法来检索属性列表的文本颜色。

virtual COLORREF GetPropertyGridGroupTextColor(CMFCPropertyGridCtrl* pPropList);

参数

pPropList
[in] 一个指向属性列表的指针。

返回值

一个 COLORREF 参数,指示属性列表的文本颜色。

注解

替代此函数以自定义应用程序中属性列表的文本颜色。

CMFCVisualManager::GetRibbonHyperlinkTextColor

virtual COLORREF GetRibbonHyperlinkTextColor(CMFCRibbonLinkCtrl* pHyperLink);

参数

[in] pHyperLink

返回值

注解

CMFCVisualManager::GetRibbonPopupBorderSize

virtual int GetRibbonPopupBorderSize(const CMFCRibbonPanelMenu*) const;

参数

[in] CMFCRibbonPanelMenu*

返回值

备注

CMFCVisualManager::GetRibbonQuickAccessToolBarChevronOffset

virtual int GetRibbonQuickAccessToolBarChevronOffset();

返回值

注解

CMFCVisualManager::GetRibbonQuickAccessToolBarRightMargin

virtual int GetRibbonQuickAccessToolBarRightMargin();

返回值

备注

CMFCVisualManager::GetRibbonQuickAccessToolBarTextColor

virtual COLORREF GetRibbonQuickAccessToolBarTextColor(BOOL bDisabled = FALSE);

参数

[in] bDisabled

返回值

注解

CMFCVisualManager::GetRibbonSliderColors

virtual void GetRibbonSliderColors(
    CMFCRibbonSlider* pSlider,
    BOOL bIsHighlighted,
    BOOL bIsPressed,
    BOOL bIsDisabled,
    COLORREF& clrLine,
    COLORREF& clrFill);

参数

[in] pSlider
[in] bIsHighlighted
[in] bIsPressed
[in] bIsDisabled
[in] clrLine
[in] clrFill

备注

CMFCVisualManager::GetRibbonStatusBarTextColor

virtual COLORREF GetRibbonStatusBarTextColor(CMFCRibbonStatusBar* pStatusBar);

参数

[in] pStatusBar

返回值

备注

CMFCVisualManager::GetShowAllMenuItemsHeight

virtual int GetShowAllMenuItemsHeight(
    CDC* pDC,
    const CSize& sizeDefault);

参数

[in] pDC
[in] sizeDefault

返回值

备注

CMFCVisualManager::GetSmartDockingBaseGuideColors

virtual void GetSmartDockingBaseGuideColors(
    COLORREF& clrBaseGroupBackground,
    COLORREF& clrBaseGroupBorder);

参数

[in] clrBaseGroupBackground
[in] clrBaseGroupBorder

注解

CMFCVisualManager::GetSmartDockingHighlightToneColor

virtual COLORREF GetSmartDockingHighlightToneColor();

返回值

备注

CMFCVisualManager::GetSmartDockingTheme

返回用于显示智能停靠标记的主题。

virtual AFX_SMARTDOCK_THEME GetSmartDockingTheme();

返回值

返回以下枚举值之一:AFX_SDT_DEFAULT、AFX_SDT_VS2005、AFX_SDT_VS2008。

备注

CMFCVisualManager::GetStatusBarPaneTextColor

virtual COLORREF GetStatusBarPaneTextColor(
    CMFCStatusBar* pStatusBar,
    CMFCStatusBarPaneInfo* pPane);

参数

[in] pStatusBar
[in] pPane

返回值

注解

CMFCVisualManager::GetTabFrameColors

当框架必须检索用于绘制选项卡窗口的颜色集时,框架将调用此函数。

virtual void GetTabFrameColors(
    const CMFCBaseTabCtrl* pTabWnd,
    COLORREF& clrDark,
    COLORREF& clrBlack,
    COLORREF& clrHighlight,
    COLORREF& clrFace,
    COLORREF& clrDarkShadow,
    COLORREF& clrLight,
    CBrush*& pbrFace,
    CBrush*& pbrBlack);

参数

pTabWnd
[in] 一个指向框架正在其中绘制选项卡的选项卡式窗口的指针。

clrDark
[out] 对 COLORREF 参数的引用,此方法在该参数中存储选项卡的深色边框的颜色。

clrBlack
[out] 对 COLORREF 参数的引用,此方法在该参数中存储选项卡窗口的边框的颜色。 边框的默认颜色为黑色。

clrHighlight
[out] 对 COLORREF 参数的引用,此方法在该参数中存储选项卡窗口突出显示状态的颜色。

clrFace
[out] 对 COLORREF 参数的引用,此方法在该参数中存储选项卡窗口正面的颜色。

clrDarkShadow
[out] 对 COLORREF 参数的引用,此方法在该参数中存储选项卡窗口的阴影的颜色。

clrLight
[out] 对 COLORREF 参数的引用,此方法在该参数中存储选项卡窗口的浅色边缘的颜色。

pbrFace
[out] 一个指向画笔引用的指针。 此方法在此参数中存储用于填充选项卡窗口正面的画笔。

pbrBlack
[out] 一个指向画笔引用的指针。 此方法在此参数中存储用于填充选项卡窗口的深色边缘的画笔。

备注

如果要自定义框架在绘制选项卡窗口时使用的颜色集,请替代派生类中的此函数。

CMFCVisualManager::GetTabHorzMargin

virtual int GetTabHorzMargin(const CMFCBaseTabCtrl*);

参数

[in] CMFCBaseTabCtrl*

返回值

注解

CMFCVisualManager::GetTabTextColor

virtual COLORREF GetTabTextColor(
    const CMFCBaseTabCtrl*,
    int,
    BOOL);

参数

[in] CMFCBaseTabCtrl*
[in] int
[in] BOOL

返回值

注解

CMFCVisualManager::GetTasksPaneGroupCaptionHeight

int GetTasksPaneGroupCaptionHeight() const;

返回值

备注

CMFCVisualManager::GetTasksPaneGroupCaptionHorzOffset

int GetTasksPaneGroupCaptionHorzOffset() const;

返回值

备注

CMFCVisualManager::GetTasksPaneGroupCaptionVertOffset

int GetTasksPaneGroupCaptionVertOffset() const;

返回值

备注

CMFCVisualManager::GetTasksPaneGroupVertOffset

int GetTasksPaneGroupVertOffset() const;

返回值

注解

CMFCVisualManager::GetTasksPaneHorzMargin

int GetTasksPaneHorzMargin() const;

返回值

备注

CMFCVisualManager::GetTasksPaneIconHorzOffset

int GetTasksPaneIconHorzOffset() const;

返回值

备注

CMFCVisualManager::GetTasksPaneIconVertOffset

int GetTasksPaneIconVertOffset() const;

返回值

备注

CMFCVisualManager::GetTasksPaneTaskHorzOffset

int GetTasksPaneTaskHorzOffset() const;

返回值

备注

CMFCVisualManager::GetTasksPaneVertMargin

int GetTasksPaneVertMargin() const;

返回值

注解

CMFCVisualManager::GetToolbarButtonTextColor

框架调用此方法来确定工具栏按钮的文本颜色。

virtual COLORREF GetToolbarButtonTextColor(
    CMFCToolBarButton* pButton,
    CMFCVisualManager::AFX_BUTTON_STATE state);

参数

pButton
[in] 一个指向工具栏按钮的指针。

state
[in] 工具栏按钮的状态。

返回值

pButton 在具有 state 所指示的状态时的文本颜色。

注解

CMFCToolBarButton 类对象的文本颜色取决于按钮的状态。 工具栏按钮可能处于 ButtonsIsRegularButtonsIsPressedButtonsIsHighlighted 状态。

替代此函数以自定义应用程序中工具栏按钮的文本颜色。

CMFCVisualManager::GetToolBarCustomizeButtonMargin

virtual int GetToolBarCustomizeButtonMargin() const;

返回值

注解

CMFCVisualManager::GetToolbarDisabledColor

virtual COLORREF GetToolbarDisabledColor() const;

返回值

注解

CMFCVisualManager::GetToolbarDisabledTextColor

框架调用此函数以确定不可用的工具栏按钮的文本颜色。

virtual COLORREF GetToolbarDisabledTextColor();

返回值

框架用于不可用工具栏按钮的文本颜色的颜色。

备注

在自定义虚拟管理器中替代此方法,以设置不可用工具栏按钮的文本颜色。

CMFCVisualManager::GetToolbarHighlightColor

virtual COLORREF GetToolbarHighlightColor();

返回值

注解

CMFCVisualManager::GetToolTipInfo

virtual BOOL GetToolTipInfo(
    CMFCToolTipInfo& params,
    UINT nType = (UINT)(-1));

参数

[in] params
[in] nType

返回值

备注

CMFCVisualManager::HasOverlappedAutoHideButtons

返回当前虚拟管理器中自动隐藏按钮是否重叠。

virtual BOOL HasOverlappedAutoHideButtons() const;

返回值

如果自动隐藏按钮重叠,则为 TRUE;否则为 FALSE。

CMFCVisualManager::IsAutoDestroy

BOOL IsAutoDestroy() const;

返回值

注解

CMFCVisualManager::IsDefaultWinXPPopupButton

virtual BOOL IsDefaultWinXPPopupButton(CMFCDesktopAlertWndButton*) const;

参数

[in] CMFCDesktopAlertWndButton*

返回值

备注

CMFCVisualManager::IsDockingTabHasBorder

返回当前虚拟管理器是否绘制停靠窗格和选项卡式窗格的边框。

virtual BOOL IsDockingTabHasBorder();

返回值

如果虚拟管理器在选项卡式停靠窗格周围绘制边框,则为 TRUE;否则为 FALSE。

备注

当多个窗格停靠到同一位置时,停靠窗格会变为选项卡式。

CMFCVisualManager::IsEmbossDisabledImage

指定框架是否对不可用的图像设置浮雕。

BOOL IsEmbossDisabledImage() const;

返回值

如果框架为不可用的图像设置浮雕,则为非零值;否则为 0。

备注

CMFCToolBarImages::Draw 在工具栏上绘制不可用的图像时会调用此方法。

CMFCVisualManager::IsFadeInactiveImage

框架在工具栏或菜单中绘制非活动图像时调用此方法。

BOOL IsFadeInactiveImage() const;

返回值

如果框架在工具栏或菜单中绘制非活动图像时使用照明效果,则为非零值;否则为 0。

注解

可以通过调用 CMFCVisualManager::SetFadeInactiveImage 来激活或停用照明效果。 照明效果是使不可用图像显示为淡化的原因。

CMFCVisualManager::IsFrameMenuCheckedItems

BOOL IsFrameMenuCheckedItems() const;

返回值

备注

CMFCVisualManager::IsHighlightOneNoteTabs

virtual BOOL IsHighlightOneNoteTabs() const;

返回值

注解

CMFCVisualManager::IsHighlightWholeMenuItem

virtual BOOL IsHighlightWholeMenuItem();

返回值

注解

CMFCVisualManager::IsLayeredRibbonKeyTip

virtual BOOL IsLayeredRibbonKeyTip() const;

返回值

注解

CMFCVisualManager::IsMenuFlatLook

指示菜单按钮是否显示为平面。

BOOL IsMenuFlatLook() const;

返回值

如果菜单按钮显示为平面,则为非零值;否则为 0。

备注

默认情况下,菜单按钮不会显示为平面。 使用 CMFCVisualManager::SetMenuFlatLook 方法更改此行为。 如果菜单按钮显示为平面,当用户单击它们时,它们不会更改外观。

CMFCVisualManager::IsOfficeXPStyleMenus

指示虚拟管理器是否实现 Office XP 样式菜单。

virtual BOOL IsOfficeXPStyleMenus() const;

返回值

如果虚拟管理器显示 Office XP 样式菜单,则为非零值;否则为 0。

备注

CMFCPopupMenu 类在必须绘制菜单和阴影时调用此方法。 默认情况下,此方法返回 FALSE。 如果要使用类似于 Office XP 中的弹出菜单的弹出菜单,请替代自定义虚拟管理器中的此方法并返回 TRUE。

CMFCVisualManager::IsOffsetPressedButton

virtual BOOL IsOffsetPressedButton() const;

返回值

备注

CMFCVisualManager::IsOwnerDrawCaption

指示当前虚拟管理器是否实现所有者绘制的标题栏。

virtual BOOL IsOwnerDrawCaption();

返回值

如果应用程序中的所有框架窗口都有所有者绘制的标题栏,则为 TRUE;否则为 FALSE。

CMFCVisualManager::IsOwnerDrawMenuCheck

virtual BOOL IsOwnerDrawMenuCheck();

返回值

备注

CMFCVisualManager::IsShadowHighlightedImage

指示虚拟管理器在呈现突出显示的图像时是否显示阴影。

BOOL IsShadowHighlightedImage() const;

返回值

如果虚拟管理器在突出显示的图像下显示阴影,则为非零值;否则为 0。

CMFCVisualManager::IsToolbarButtonFillEnabled

BOOL IsToolbarButtonFillEnabled() const;

返回值

备注

CMFCVisualManager::IsToolbarRoundShape

virtual BOOL IsToolbarRoundShape(CMFCToolBar*);

参数

[in] CMFCToolBar*

返回值

注解

CMFCVisualManager::IsWindowsThemingSupported

virtual BOOL IsWindowsThemingSupported() const;

返回值

注解

CMFCVisualManager::OnActivateApp

virtual void OnActivateApp(
    CWnd* pWnd,
    BOOL bActive);

参数

[in] pWnd
[in] bActive

注解

CMFCVisualManager::OnDrawAutoHideButtonBorder

框架在绘制自动隐藏按钮的边框时调用此方法。

virtual void OnDrawAutoHideButtonBorder(
    CDC* pDC,
    CRect rectBounds,
    CRect rectBorderSize,
    CMFCAutoHideButton* pButton);

参数

pDC
[in] 指向设备上下文的指针。

rectBounds
[in] 自动隐藏按钮的大小和位置。

rectBorderSize
[in] 一个包含边框大小的 CRect 参数。

pButton
[in] 一个指向自动隐藏按钮的指针。 框架正在绘制此按钮的边框。

备注

如果要自定义自动隐藏按钮的边框外观,请在派生类中替代此方法。 默认情况下,此方法使用应用程序的默认阴影颜色填充平面边框。

rectBorderSize 参数不包含边框的坐标。 它包含 topbottomleftright 数据成员中的边框大小。 如果值小于或等于 0,则表示“自动隐藏”按钮的这一侧没有边框。

CMFCVisualManager::OnDrawBarGripper

由框架在为控件条绘制手柄时进行调用。

virtual void OnDrawBarGripper(
    CDC* pDC,
    CRect rectGripper,
    BOOL bHorz,
    CBasePane* pBar);

参数

pDC
[in] 一个指向控件条的设备上下文的指针。

rectGripper
[in] 控件条的边框。

bHorz
[in] 一个布尔参数,指定控件条是水平停靠还是垂直停靠。

pBar
[in] 一个指向控件条的指针。 虚拟管理器会绘制此控件条的手柄。

备注

此方法的默认实现显示标准手柄。 若要自定义手柄的外观,请在派生自 CMFCVisualManager 类的自定义类中替代此方法。

CMFCVisualManager::OnDrawBrowseButton

框架在为编辑控件绘制浏览按钮时调用此方法。

virtual BOOL OnDrawBrowseButton(
    CDC* pDC,
    CRect rect,
    CMFCEditBrowseCtrl* pEdit,
    CMFCVisualManager::AFX_BUTTON_STATE state,
    COLORREF& clrText);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定浏览按钮的边界。

pEdit
[in] 一个指向编辑控件的指针。 虚拟管理器绘制此编辑控件的浏览按钮。

State
[in] 一个枚举值,指定按钮的状态。

clrText
[out] 对 COLORREF 参数的引用。 这是一个保留值,当前未使用。

返回值

若成功,则为 TRUE;否则为 FALSE。

注解

如果要自定义 CMFCEditBrowseCtrl 类实例中浏览按钮的外观,请替代派生类中的此函数。 按钮状态的可能值为 ButtonsIsRegularButtonsIsPressedButtonsIsHighlighted

CMFCVisualManager::OnDrawButtonBorder

框架在绘制工具栏按钮的边框时调用此方法。

virtual void OnDrawButtonBorder(
    CDC* pDC,
    CMFCToolBarButton* pButton,
    CRect rect,
    CMFCVisualManager::AFX_BUTTON_STATE state);

参数

pDC
[in] 一个指向工具栏按钮的设备上下文的指针。

pButton
[in] 指向工具栏按钮的指针。 框架会绘制此按钮的边框。

rect
[in] 一个矩形,指定工具栏按钮的边界。

State
[in] 一个枚举的数据类型,指定工具栏按钮的当前状态。

备注

此方法的默认实现显示标准边框。 若要自定义工具栏按钮的边框外观,请在派生的虚拟管理器中替代此方法。

工具栏按钮可能处于 ButtonsIsRegularButtonsIsPressedButtonsIsHighlighted 状态。

CMFCVisualManager::OnDrawButtonSeparator

virtual void OnDrawButtonSeparator(
    CDC* pDC,
    CMFCToolBarButton* pButton,
    CRect rect,
    CMFCVisualManager::AFX_BUTTON_STATE state,
    BOOL bHorz);

参数

[in] pDC
[in] pButton
[in] rect
[in] state
[in] bHorz

备注

CMFCVisualManager::OnDrawCaptionBarBorder

框架在绘制 CMFCCaptionBar 类对象的边框时调用此方法。

virtual void OnDrawCaptionBarBorder(
    CDC* pDC,
    CMFCCaptionBar* pBar,
    CRect rect,
    COLORREF clrBarBorder,
    BOOL bFlatBorder);

参数

pDC
[in] 指向设备上下文的指针。

pBar
[in] 一个指向 CMFCCaptionBar 对象的指针。 框架会绘制此标题栏。

rect
[in] 一个矩形,指定标题栏的边界。

clrBarBorder
[in] 边框颜色。

bFlatBorder
[in] 一个布尔参数,指定边框是否具有平面 2D 外观。

备注

若要自定义标题栏的边框外观,请在派生类中替代此方法。

CMFCVisualManager::OnDrawCaptionBarButtonBorder

virtual void OnDrawCaptionBarButtonBorder(
    CDC* pDC,
    CMFCCaptionBar* pBar,
    CRect rect,
    BOOL bIsPressed,
    BOOL bIsHighlighted,
    BOOL bIsDisabled,
    BOOL bHasDropDownArrow,
    BOOL bIsSysButton);

参数

[in] pDC
[in] pBar
[in] rect
[in] bIsPressed
[in] bIsHighlighted
[in] bIsDisabled
[in] bHasDropDownArrow
[in] bIsSysButton

备注

CMFCVisualManager::OnDrawCaptionBarInfoArea

virtual void OnDrawCaptionBarInfoArea(
    CDC* pDC,
    CMFCCaptionBar* pBar,
    CRect rect);

参数

[in] pDC
[in] pBar
[in] rect

注解

CMFCVisualManager::OnDrawCaptionButton

框架在绘制 CMFCCaptionButton 对象时调用此方法。

virtual void OnDrawCaptionButton (
    CDC* pDC,
    CMFCCaptionButton* pButton,
    BOOL bActive,
    BOOL bHorz,
    BOOL bMaximized,
    BOOL bDisabled,
    int nImageID = -1);

参数

pDC
[in] 指向设备上下文的指针。

pButton
[in] 一个指向 CMFCCaptionButton 对象的指针。 框架会绘制此标题按钮。

bActive
[in] 一个布尔参数,指定按钮是否处于活动状态。

bHorz
[in] 一个布尔参数,指定标题栏是否是水平的。

bMaximized
[in] 一个布尔参数,指定父窗格是否已最大化。

bDisabled
[in] 一个布尔参数,指定标题按钮是否已禁用。

nImageID
[in] 要用于按钮的图标的图像索引。 如果 nImageID 为 -1,则此方法使用 pButton 中记录的图像索引。

备注

此方法的默认实现显示 CMenuImages 类的全局实例中的一个小按钮。 按钮在 CMenuImages 的头文件中列出。 示例包括 CMenuImages::IdCloseCMenuImages::IdArowLeftCMenuImages::IdArowRightCMenuImages::IdArowDownCMenuImages::IdArowUpCMenuImages::IdPinHorz

在派生类中替代此方法以自定义标题按钮的外观。

CMFCVisualManager::OnDrawCheckBox

virtual void OnDrawCheckBox(
    CDC* pDC,
    CRect rect,
    BOOL bHighlighted,
    BOOL bChecked,
    BOOL bEnabled);

参数

[in] pDC
[in] rect
[in] bHighlighted
[in] bChecked
[in] bEnabled

备注

CMFCVisualManager::OnDrawCheckBoxEx

virtual void OnDrawCheckBoxEx(
    CDC* pDC,
    CRect rect,
    int nState,
    BOOL bHighlighted,
    BOOL bPressed,
    BOOL bEnabled);

参数

[in] pDC
[in] rect
[in] nState
[in] bHighlighted
[in] bPressed
[in] bEnabled

备注

CMFCVisualManager::OnDrawComboBorder

框架在 CMFCToolBarComboBoxButton 类的实例周围绘制边框时调用此方法。

virtual void OnDrawComboBorder(
    CDC* pDC,
    CRect rect,
    BOOL bDisabled,
    BOOL bIsDropped,
    BOOL bIsHighlighted,
    CMFCToolBarComboBoxButton* pButton);

参数

pDC
[in] 一个指向组合框按钮的设备上下文的指针。

rect
[in] 一个矩形,指定组合框按钮的边界。

bDisabled
[in] 一个布尔参数,指示组合框按钮是否不可用。

bIsDropped
[in] 一个布尔参数,指示组合框是否已下拉。

bIsHighlighted
[in] 一个布尔参数,指示组合框按钮是否突出显示。

pButton
[in] 一个指向 CMFCToolBarComboBoxButton 对象的指针。 框架会绘制此组合框按钮。

备注

若要自定义组合框的边框外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawComboDropButton

框架在绘制 CMFCToolBarComboBoxButton 的下拉按钮时调用此方法。

virtual void OnDrawComboDropButton(
    CDC* pDC,
    CRect rect,
    BOOL bDisabled,
    BOOL bIsDropped,
    BOOL bIsHighlighted,
    CMFCToolBarComboBoxButton* pButton);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定下拉按钮的边界。

bDisabled
[in] 一个布尔参数,指示下拉按钮是否不可用。

bIsDropped
[in] 一个布尔参数,指示组合框是否已下拉。

bIsHighlighted
[in] 一个布尔参数,指示下拉按钮是否突出显示。

pButton
[in] 一个指向 CMFCToolBarComboBoxButton 对象的指针。 框架会为此组合框按钮绘制下拉按钮。

注解

若要自定义组合框按钮的下拉按钮的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawControlBorder

virtual void OnDrawControlBorder(CWnd* pWndCtrl);

参数

[in] pWndCtrl

注解

CMFCVisualManager::OnDrawDefaultRibbonImage

框架在绘制用于功能区按钮的默认图像时调用此方法。

virtual void OnDrawDefaultRibbonImage(
    CDC* pDC,
    CRect rectImage,
    BOOL bIsDisabled = FALSE,
    BOOL bIsPressed = FALSE,
    BOOL bIsHighlighted = FALSE);

参数

pDC
[in] 指向设备上下文的指针。

rectImage
[in] 一个矩形,指定默认图像的边界。

bIsDisabled
[in] 一个布尔参数,指示功能区按钮是否不可用。

bIsPressed
[in] 一个布尔参数,指示功能区按钮是否已按下。

bIsHighlighted
[in] 一个布尔参数,指示功能区按钮是否已突出显示。

备注

如果要自定义用于功能区按钮的图像,请替代派生虚拟管理器中的此方法。

CMFCVisualManager::OnDrawEditBorder

框架在 CMFCToolBarEditBoxButton 类的实例周围绘制边框时调用此方法。

virtual void OnDrawEditBorder(
    CDC* pDC,
    CRect rect,
    BOOL bDisabled,
    BOOL bIsHighlighted,
    CMFCToolBarEditBoxButton* pButton);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定 CMFCToolBarEditBoxButton 对象的边界。

bDisabled
[in] 一个布尔参数,指示按钮是否不可用。

bIsHighlighted
[in] 一个布尔参数,指示按钮是否突出显示。

pButton
[in] 一个指向 CMFCToolBarEditBoxButton 对象的指针。 框架会绘制此编辑框按钮的边框。

备注

若要自定义 CMFCToolBarEditBoxButton 对象的边框,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawExpandingBox

virtual void OnDrawExpandingBox(
    CDC* pDC,
    CRect rect,
    BOOL bIsOpened,
    COLORREF colorBox);

参数

[in] pDC
[in] rect
[in] bIsOpened
[in] colorBox

注解

CMFCVisualManager::OnDrawFloatingToolbarBorder

框架在绘制浮动工具栏的边框时调用此方法。

virtual void OnDrawFloatingToolbarBorder(
    CDC* pDC,
    CMFCBaseToolBar* pToolBar,
    CRect rectBorder,
    CRect rectBorderSize);

参数

pDC
[in] 指向设备上下文的指针。

pToolBar
[in] 一个指向浮动工具栏的指针。

rectBorder
[in] 一个矩形,指定浮动工具栏的边界。

rectBorderSize
[in] 一个矩形,指定工具栏的边框大小。

注解

浮动工具栏是显示为微型框窗口的工具栏。 通常,当用户拖动工具栏以使之不再停靠时,会出现这种情况。

边框的大小由 rectBorderSize 中的相应参数指定。 例如,工具栏的上边框的宽度由 rectBorderSize.top 指定。

若要自定义浮动工具栏的边框外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawHeaderCtrlBorder

框架在 CMFCHeaderCtrl 类实例周围绘制边框时调用此方法。

virtual void OnDrawHeaderCtrlBorder(
    CMFCHeaderCtrl* pCtrl,
    CDC* pDC,
    CRect& rect,
    BOOL bIsPressed,
    BOOL bIsHighlighted);

参数

pCtrl
[in] 一个指向 CMFCHeaderCtrl 对象的指针。 框架会绘制此标题控件的边框。

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,它指定标头控件的边界。

bIsPressed
[in] 一个布尔参数,指示标题控件是否已按下。

bIsHighlighted
[in] 一个布尔参数,指示标题控件是否已突出显示。

备注

若要自定义标头控件的边框,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawHeaderCtrlSortArrow

框架在绘制标题控件的排序箭头时调用此函数。

virtual void OnDrawHeaderCtrlSortArrow(
    CMFCHeaderCtrl* pCtrl,
    CDC* pDC,
    CRect& rect,
    BOOL bIsUp);

参数

pCtrl
[in] 一个指向标题控件的指针。 虚拟管理器会绘制此 CMFCHeaderCtrl 类对象的排序箭头。

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定排序箭头的边界。

bIsUp
[in] 一个布尔值,指定排序箭头的方向。

注解

如果 bIsUp 为 TRUE,虚拟管理器会绘制向上排序箭头。 如果它为 FALSE,虚拟管理器会绘制向下排序箭头。 在派生类中替代 OnDrawHeaderCtrlSortArrow 以自定义排序按钮的外观。

CMFCVisualManager::OnDrawMenuArrowOnCustomizeList

virtual void OnDrawMenuArrowOnCustomizeList(
    CDC* pDC,
    CRect rectCommand,
    BOOL bSelected);

参数

[in] pDC
[in] rectCommand
[in] bSelected

备注

CMFCVisualManager::OnDrawMenuBorder

框架在绘制 CMFCPopupMenu 的边框时调用此方法。

virtual void OnDrawMenuBorder(
    CDC* pDC,
    CMFCPopupMenu* pMenu,
    CRect rect);

参数

pDC
[in] 一个指向 CMFCPopupMenu 对象设备上下文的指针。

pMenu
[in] 一个指向 CMFCPopupMenu 对象的指针。 框架会在此弹出菜单的周围绘制边框。

rect
[in] 一个矩形,指定弹出菜单的边界。

备注

此方法的默认实现显示标准菜单边框。 若要自定义菜单边框的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawMenuCheck

virtual void OnDrawMenuCheck(
    CDC* pDC,
    CMFCToolBarMenuButton* pButton,
    CRect rect,
    BOOL bHighlight,
    BOOL bIsRadio);

参数

[in] pDC
[in] pButton
[in] rect
[in] bHighlight
[in] bIsRadio

备注

CMFCVisualManager::OnDrawMenuItemButton

virtual void OnDrawMenuItemButton(
    CDC* pDC,
    CMFCToolBarMenuButton* pButton,
    CRect rectButton,
    BOOL bHighlight,
    BOOL bDisabled);

参数

[in] pDC
[in] pButton
[in] rectButton
[in] bHighlight
[in] bDisabled

注解

CMFCVisualManager::OnDrawMenuLabel

virtual COLORREF OnDrawMenuLabel(
    CDC* pDC,
    CRect rect);

参数

[in] pDC
[in] rect

返回值

注解

CMFCVisualManager::OnDrawMenuResizeBar

virtual void OnDrawMenuResizeBar(
    CDC* pDC,
    CRect rect,
    int nResizeFlags);

参数

[in] pDC
[in] rect
[in] nResizeFlags

备注

CMFCVisualManager::OnDrawMenuScrollButton

框架在绘制菜单滚动按钮时调用此方法。

virtual void OnDrawMenuScrollButton(
    CDC* pDC,
    CRect rect,
    BOOL bIsScrollDown,
    BOOL bIsHighlited,
    BOOL bIsPressed,
    BOOL bIsDisabled);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定滚动按钮的边界。

bIsScrollDown
[in] 一个布尔值,指示虚拟管理器绘制的按钮的类型。 值为 TRUE 指示虚拟管理器绘制向下按钮。

bIsHighlited
[in] 一个布尔值,指示按钮是否突出显示。

bIsPressed
[in] 一个布尔值,指示按钮是否已按下。

bIsDisabled
[in] 一个布尔值,指示按钮是否已禁用。

备注

若要自定义菜单滚动按钮的外观,请在派生的虚拟管理器中替代此方法。 当菜单项的总高度超过弹出菜单的高度时,菜单滚动按钮会显示在弹出菜单的边缘。

CMFCVisualManager::OnDrawMenuShadow

virtual void OnDrawMenuShadow(
    CDC* pDC,
    const CRect& rectClient,
    const CRect& rectExclude,
    int nDepth,
    int iMinBrightness,
    int iMaxBrightness,
    CBitmap* pBmpSaveBottom,
    CBitmap* pBmpSaveRight,
    BOOL bRTL);

参数

[in] pDC
[in] rectClient
[in] rectExclude
[in] nDepth
[in] iMinBrightness
[in] iMaxBrightness
[in] pBmpSaveBottom
[in] pBmpSaveRight
[in] bRTL

备注

CMFCVisualManager::OnDrawMenuSystemButton

框架在为应用程序绘制菜单系统按钮时调用此方法。

virtual void OnDrawMenuSystemButton(
    CDC* pDC,
    CRect rect,
    UINT uiSystemCommand,
    UINT nStyle,
    BOOL bHighlight);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定按钮的边界。

uiSystemCommand
[in] 一个标志,指定与按钮关联的系统命令。 可能的值为 SC_CLOSE、SC_MINIMIZE 和 SC_RESTORE。

nStyle
[in] 一个标志,指定按钮的当前样式。 可能的值为 TBBS_PRESSED、TBBS_DISABLED 和 0。

bHighlight
[in] 一个布尔参数,指定按钮是否突出显示。

备注

菜单系统按钮是位于标题栏上的“关闭”、“最小化”、“最大化”和“还原”按钮。

此方法的默认实现调用类型为 DFC_CAPTION 的 CDC::DrawFrameControl。 在派生的虚拟管理器类中替代此方法,以自定义系统按钮的外观。

CMFCVisualManager::OnDrawMiniFrameBorder

virtual void OnDrawMiniFrameBorder(
    CDC* pDC,
    CPaneFrameWnd* pFrameWnd,
    CRect rectBorder,
    CRect rectBorderSize);

参数

[in] pDC
[in] pFrameWnd
[in] rectBorder
[in] rectBorderSize

备注

CMFCVisualManager::OnDrawOutlookBarSplitter

框架在绘制 Outlook 栏的拆分器时调用此方法。

virtual void OnDrawOutlookBarSplitter(
    CDC* pDC,
    CRect rectSplitter);

参数

pDC
[in] 指向设备上下文的指针。

rectSplitter
[in] 一个矩形,指定拆分器的边界。

备注

若要自定义 Outlook 栏上拆分器的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawOutlookPageButtonBorder

由框架在绘制 Outlook 页面按钮的边框时进行调用。

virtual void OnDrawOutlookPageButtonBorder(
    CDC* pDC,
    CRect& rectBtn,
    BOOL bIsHighlighted,
    BOOL bIsPressed);

参数

pDC
[in] 指向设备上下文的指针。

rectBtn
[in] 一个矩形,指定 Outlook 页面按钮的边界。

bIsHighlighted
[in] 一个指定是否突出显示按钮的布尔值。

bIsPressed
[in] 一个指定是否已按下按钮的布尔值。

备注

若要更改 Outlook 页面按钮的外观,请在自定义虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawPaneBorder

框架在绘制 CPane 类对象的边框时调用此方法。

virtual void OnDrawPaneBorder(
    CDC* pDC,
    CBasePane* pBar,
    CRect& rect);

参数

pDC
[in] 一个指向控件条设备上下文的指针。

pBar
[in] 指向窗格的指针。 虚拟管理器会绘制此窗格的边框。

rect
[in] 一个矩形,指示窗格的边界。

备注

此方法的默认实现显示标准边框。 若要自定义边框的外观,请在派生类中替代此方法。

CMFCVisualManager::OnDrawPaneCaption

框架在绘制 CDockablePane 类实例的标题栏时调用此方法。

virtual COLORREF OnDrawPaneCaption(
    CDC* pDC,
    CDockablePane* pBar,
    BOOL bActive,
    CRect rectCaption,
    CRect rectButtons);

参数

pDC
[in] 指向设备上下文的指针。

pBar
[in] 一个指向 CDockablePane 对象的指针。 框架会绘制此窗格的标题。

bActive
[in] 一个布尔参数,指示控件条是否处于活动状态。

rectCaption
[in] 一个矩形,指定标题栏的边界。

rectButtons
[in] 一个矩形,指定标题按钮的边界。

返回值

一个 COLORREF 参数,指示标题栏的文本颜色。

备注

若要自定义窗格标题栏的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawPaneDivider

virtual void OnDrawPaneDivider(
    CDC* pDC,
    CPaneDivider* pSlider,
    CRect rect,
    BOOL bAutoHideMode);

参数

[in] pDC
[in] pSlider
[in] rect
[in] bAutoHideMode

备注

CMFCVisualManager::OnDrawPopupWindowBorder

virtual void OnDrawPopupWindowBorder(
    CDC* pDC,
    CRect rect);

参数

[in] pDC
[in] rect

备注

CMFCVisualManager::OnDrawPopupWindowButtonBorder

virtual void OnDrawPopupWindowButtonBorder(
    CDC* pDC,
    CRect rectClient,
    CMFCDesktopAlertWndButton* pButton);

参数

[in] pDC
[in] rectClient
[in] pButton

备注

CMFCVisualManager::OnDrawPopupWindowCaption

virtual COLORREF OnDrawPopupWindowCaption(
    CDC* pDC,
    CRect rectCaption,
    CMFCDesktopAlertWnd* pPopupWnd);

参数

[in] pDC
[in] rectCaption
[in] pPopupWnd

返回值

备注

CMFCVisualManager::OnDrawRibbonApplicationButton

框架在功能区上绘制主按钮时调用此方法。

virtual void OnDrawRibbonApplicationButton(
    CDC* pDC,
    CMFCRibbonButton* pButton);

参数

pDC
[in] 指向设备上下文的指针。

pButton
[in] 一个指向功能区上的主按钮的指针。

注解

若要自定义主按钮的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawRibbonButtonBorder

框架在功能区上绘制按钮的边框时调用此方法。

virtual void OnDrawRibbonButtonBorder(
    CDC* pDC,
    CMFCRibbonButton* pButton);

参数

pDC
[in] 指向设备上下文的指针。

pButton
[in] 一个指向 CMFCRibbonButton 对象的指针。 框架绘制此功能区按钮的边框。

备注

若要自定义 CMFCRibbonButton 的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawRibbonButtonsGroup

框架在功能区上绘制一组按钮时调用此方法。

virtual COLORREF OnDrawRibbonButtonsGroup(
    CDC* pDC,
    CMFCRibbonButtonsGroup* pGroup,
    CRect rectGroup);

参数

pDC
[in] 指向设备上下文的指针。

pGroup
[in] 一个指向功能区上的一组按钮的指针。 框架会绘制此组按钮。

rectGroup
[in] 一个矩形,指定组的边界。

返回值

一个保留值。 默认实现将返回 -1。

注解

若要自定义功能区上一组按钮的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawRibbonCaption

框架在绘制主框架窗口的标题栏时调用此方法。 仅当功能区与主框架集成时,框架才调用此方法。

virtual void OnDrawRibbonCaption(
    CDC* pDC,
    CMFCRibbonBar* pBar,
    CRect rect,
    CRect rectText);

参数

pDC
[in] 指向设备上下文的指针。

pBar
[in] 一个指向功能区栏的指针。 虚拟管理器会绘制此功能区栏。

rect
[in] 一个矩形,指定功能区栏的边界。

rectText
[in] 一个矩形,指定标题栏文本的边界。

备注

若要自定义标题栏的外观,请在派生的虚拟管理器中替代此函数。 仅当功能区与主框架窗口集成时,此方法才会影响标题栏。

CMFCVisualManager::OnDrawRibbonCaptionButton

框架在绘制功能区栏上的标题按钮时调用此方法。

virtual void OnDrawRibbonCaptionButton(
    CDC* pDC,
    CMFCRibbonCaptionButton* pButton);

参数

pDC
一个指向设备上下文的指针。

pButton
一个指向 CMFCRibbonCaptionButton 类的指针。 框架会绘制此标题按钮。

注解

若要自定义功能区上标题按钮的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawRibbonCategory

框架在绘制 CMFCRibbonCategory 对象时调用此方法。

virtual void OnDrawRibbonCategory(
    CDC* pDC,
    CMFCRibbonCategory* pCategory,
    CRect rectCategory);

参数

pDC
[in] 指向设备上下文的指针。

pCategory
[in] 一个指向 CMFCRibbonCategory 对象的指针。 框架会绘制此功能区类别。

rectCategory
[in] 一个矩形,指定功能区上所有类别面板的边界。

注解

功能区类别是菜单命令的逻辑分组。 有关功能区类别的详细信息,请参阅 CMFCRibbonCategory 类

若要自定义功能区类别的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawRibbonCategoryCaption

框架在绘制功能区类别的标题栏时调用此方法。

virtual COLORREF OnDrawRibbonCategoryCaption(
    CDC* pDC,
    CMFCRibbonContextCaption* pContextCaption);

参数

pDC
[in] 绘制上下文。

pContextCaption
[in] 一个指向标题栏的指针。 虚拟管理器会绘制此 CMFCRibbonContextCaption 类对象。

返回值

一个 COLORREF 参数,指示标题栏上的文本颜色。

备注

若要自定义功能区类别的标题栏外观,请在派生类中替代此方法。 有关标题栏的详细信息,请参阅 CMFCRibbonContextCaption 类

CMFCVisualManager::OnDrawRibbonCategoryScroll

virtual void OnDrawRibbonCategoryScroll(
    CDC* pDC,
    CRibbonCategoryScroll* pScroll);

参数

[in] pDC
[in] pScroll

注解

CMFCVisualManager::OnDrawRibbonCategoryTab

框架在绘制功能区类别的选项卡时调用此方法。

virtual COLORREF OnDrawRibbonCategoryTab(
    CDC* pDC,
    CMFCRibbonTab* pTab,
    BOOL bIsActive);

参数

pDC
[in] 指向设备上下文的指针。

pTab
[in] 一个指向 CMFCRibbonTab 类的实例的指针。 框架会绘制此选项卡。

bIsActive
[in] 一个布尔参数,指示选项卡是否处于活动状态。

返回值

用于功能区类别选项卡上的文本的颜色。

备注

在派生的虚拟管理器中替代此方法,以自定义功能区类别选项卡的外观。有关功能区类别的详细信息,请参阅 CMFCRibbonCategory 类

CMFCVisualManager::OnDrawRibbonCheckBoxOnList

virtual void OnDrawRibbonCheckBoxOnList(
    CDC* pDC,
    CMFCRibbonCheckBox* pCheckBox,
    CRect rect,
    BOOL bIsSelected,
    BOOL bHighlighted);

参数

[in] pDC
[in] pCheckBox
[in] rect
[in] bIsSelected
[in] bHighlighted

备注

CMFCVisualManager::OnDrawRibbonColorPaletteBox

virtual void OnDrawRibbonColorPaletteBox(
    CDC* pDC,
    CMFCRibbonColorButton* pColorButton,
    CMFCRibbonGalleryIcon* pIcon,
    COLORREF color,
    CRect rect,
    BOOL bDrawTopEdge,
    BOOL bDrawBottomEdge,
    BOOL bIsHighlighted,
    BOOL bIsChecked,
    BOOL bIsDisabled);

参数

[in] pDC
[in] pColorButton
[in] pIcon
[in] color
[in] rect
[in] bDrawTopEdge
[in] bDrawBottomEdge
[in] bIsHighlighted
[in] bIsChecked
[in] bIsDisabled

备注

CMFCVisualManager::OnDrawRibbonDefaultPaneButton

框架在绘制功能区窗格的默认按钮时调用此方法。

virtual void OnDrawRibbonDefaultPaneButton(
    CDC* pDC,
    CMFCRibbonButton* pButton);

参数

pDC
[in] 指向设备上下文的指针。

pButton
[in] 一个指向功能区窗格的默认按钮的指针。

备注

将功能区窗格重设为最小大小且没有显示面板内容的区域时,框架将显示默认按钮。 当用户单击默认按钮时,框架将显示包含面板内容的下拉菜单。

若要自定义默认按钮的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawRibbonDefaultPaneButtonContext

virtual void OnDrawRibbonDefaultPaneButtonContext(
    CDC* pDC,
    CMFCRibbonButton* pButton);

参数

[in] pDC
[in] pButton

注解

CMFCVisualManager::OnDrawRibbonDefaultPaneButtonIndicator

virtual void OnDrawRibbonDefaultPaneButtonIndicator(
    CDC* pDC,
    CMFCRibbonButton* pButton,
    CRect rect,
    BOOL bIsSelected,
    BOOL bHighlighted);

参数

[in] pDC
[in] pButton
[in] rect
[in] bIsSelected
[in] bHighlighted

备注

CMFCVisualManager::OnDrawRibbonGalleryBorder

virtual void OnDrawRibbonGalleryBorder(
    CDC* pDC,
    CMFCRibbonGallery* pButton,
    CRect rectBorder);

参数

[in] pDC
[in] pButton
[in] rectBorder

备注

CMFCVisualManager::OnDrawRibbonGalleryButton

virtual void OnDrawRibbonGalleryButton(
    CDC* pDC,
    CMFCRibbonGalleryIcon* pButton);

参数

[in] pDC
[in] pButton

备注

CMFCVisualManager::OnDrawRibbonKeyTip

virtual void OnDrawRibbonKeyTip(
    CDC* pDC,
    CMFCRibbonBaseElement* pElement,
    CRect rect,
    CString str);

参数

[in] pDC
[in] pElement
[in] rect
[in] str

备注

CMFCVisualManager::OnDrawRibbonLabel

框架在绘制功能区的标签时调用此方法。

virtual void OnDrawRibbonLabel(
    CDC* pDC,
    CMFCRibbonLabel* pLabel,
    CRect rect);

参数

pDC
[in] 指向设备上下文的指针。

pLabel
[in] 一个指向 CMFCRibbonLabel 对象的指针。 框架会绘制此功能区标签。

rect
[in] 一个矩形,指定功能区面板的边界。

注解

替代派生类中的此方法以自定义功能区标签。

CMFCVisualManager::OnDrawRibbonMainPanelButtonBorder

框架在绘制主面板上的 CMFCRibbonButton 的边框时调用此方法。

virtual void OnDrawRibbonMainPanelButtonBorder(
    CDC* pDC,
    CMFCRibbonButton* pButton);

参数

pDC
[in] 指向设备上下文的指针。

pButton
[in] 一个指向功能区主面板上的 CMFCRibbonButton 的指针。 框架会绘制此按钮的边框。

注解

若要自定义主面板上的 CMFCRibbonButton 的边框外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawRibbonMainPanelFrame

框架在 CMFCRibbonMainPanel 周围绘制框架时调用此方法。

virtual void OnDrawRibbonMainPanelFrame(
    CDC* pDC,
    CMFCRibbonMainPanel* pPanel,
    CRect rect);

参数

pDC
[in] 指向设备上下文的指针。

pPanel
[in] 一个指向 CMFCRibbonMainPanel 的指针。

rect
[in] 一个矩形,指定 CMFCRibbonMainPanel 的边界。

备注

若要自定义 CMFCRibbonMainPanel 的框架的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawRibbonMenuCheckFrame

virtual void OnDrawRibbonMenuCheckFrame(
    CDC* pDC,
    CMFCRibbonButton* pButton,
    CRect rect);

参数

[in] pDC
[in] pButton
[in] rect

注解

CMFCVisualManager::OnDrawRibbonPanel

框架在绘制 CMFCRibbonPanel 对象时调用此方法。

virtual COLORREF OnDrawRibbonPanel(
    CDC* pDC,
    CMFCRibbonPanel* pPanel,
    CRect rectPanel,
    CRect rectCaption);

参数

pDC
[in] 指向设备上下文的指针。

pPanel
[in] 一个指向 CMFCRibbonPanel 对象的指针。 框架会绘制此功能区面板。

rectPanel
[in] 一个矩形,指定面板的边界。

rectCaption
[in] 一个矩形,指定面板的标题栏的边界。

返回值

功能区面板上的文本颜色。

备注

在派生类中替代此方法,以自定义功能区面板的外观。

CMFCVisualManager::OnDrawRibbonPanelCaption

框架在绘制 CMFCRibbonPanel 类的标题栏时调用此方法。

virtual void OnDrawRibbonPanelCaption(
    CDC* pDC,
    CMFCRibbonPanel* pPanel,
    CRect rectCaption);

参数

pDC
[in] 指向设备上下文的指针。

pPanel
[in] 一个指向 CMFCRibbonPanel 对象的指针。 框架会绘制此功能区面板的标题栏。

rectCaption
[in] 一个矩形,指定功能区面板的标题栏的边界。

备注

在派生类中替代此方法,以自定义功能区面板的标题栏的外观。

CMFCVisualManager::OnDrawRibbonProgressBar

框架在绘制 CMFCRibbonProgressBar 类时调用此方法。

virtual void OnDrawRibbonProgressBar(
    CDC* pDC,
    CMFCRibbonProgressBar* pProgress,
    CRect rectProgress,
    CRect rectChunk,
    BOOL bInfiniteMode);

参数

pDC
[in] 指向设备上下文的指针。

pProgress
[in] 一个指向 CMFCRibbonProgressBar 对象的指针。 框架会绘制此进度栏。

rectProgress
[in] 一个矩形,指定进度栏的边界。

rectChunk
[in] 一个矩形,指定进度栏周围的区域的边界。

bInfiniteMode
[in] 一个指示进度栏模式的布尔参数。 值为 TRUE 表示进度栏处于无限模式。 默认实现不使用此参数。

备注

若要自定义进度栏的外观,请在派生类中替代此方法。

CMFCVisualManager::OnDrawRibbonQuickAccessToolBarSeparator

框架在功能区快速访问工具栏上绘制分隔符时调用此方法。

virtual void OnDrawRibbonQuickAccessToolBarSeparator(
    CDC* pDC,
    CMFCRibbonSeparator* pSeparator,
    CRect rect);

参数

pDC
[in] 指向设备上下文的指针。

pSeparator
[in] 一个指向 CMFCRibbonSeparator 对象的指针。 框架会绘制此功能区分隔符。

rect
[in] 一个矩形,指定分隔符的边界。

备注

若要自定义快速访问工具栏上的功能区分隔符的外观,请在派生类中替代此方法。

CMFCVisualManager::OnDrawRibbonRecentFilesFrame

框架在围绕最近使用的文件的列表绘制框架时调用此方法。

virtual void OnDrawRibbonRecentFilesFrame(
    CDC* pDC,
    CMFCRibbonMainPanel* pPanel,
    CRect rect);

参数

pDC
[in] 指向设备上下文的指针。

pPanel
[in] 一个指向功能区上的主面板的指针。

rect
[in] 一个矩形,指定最近使用的文件的列表的框架边界。

备注

若要自定义最近使用的文件的列表的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawRibbonSliderChannel

框架在绘制 CMFCRibbonSlider 类的通道时调用此方法。

virtual void OnDrawRibbonSliderChannel(
    CDC* pDC,
    CMFCRibbonSlider* pSlider,
    CRect rect);

参数

pDC
[in] 指向设备上下文的指针。

pSlider
[in] 一个指向 CMFCRibbonSlider 对象的指针。 框架会绘制此功能区滑块的通道。

rect
[in] 一个矩形,指定功能区滑块通道的边界。

备注

若要自定义功能区滑块通道的外观,请在派生类中替代此方法。

CMFCVisualManager::OnDrawRibbonSliderThumb

框架在绘制 CMFCRibbonSlider 对象的缩略图时调用此方法。

virtual void OnDrawRibbonSliderThumb(
    CDC* pDC,
    CMFCRibbonSlider* pSlider,
    CRect rect,
    BOOL bIsHighlighted,
    BOOL bIsPressed,
    BOOL bIsDisabled);

参数

pDC
[in] 指向设备上下文的指针。

pSlider
[in] 指向 CMFCRibbonSlider 的指针。 框架会绘制此功能区滑块的缩略图。

rect
[in] 一个矩形,指定功能区滑块缩略图的边界。

bIsHighlighted
[in] 一个布尔参数,指示缩略图是否突出显示。

bIsPressed
[in] 一个布尔参数,指示缩略图是否已按下。

bIsDisabled
[in] 一个布尔参数,指示缩略图是否不可用。

注解

若要自定义 CMFCRibbonSlider 的缩略图的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawRibbonSliderZoomButton

框架在为 CMFCRibbonSlider 对象绘制缩放按钮时调用此方法。

virtual void OnDrawRibbonSliderZoomButton(
    CDC* pDC,
    CMFCRibbonSlider* pSlider,
    CRect rect,
    BOOL bIsZoomOut,
    BOOL bIsHighlighted,
    BOOL bIsPressed,
    BOOL bIsDisabled);

参数

pDC
[in] 指向设备上下文的指针。

pSlider
[in] 一个指向 CMFCRibbonSlider 对象的指针。 框架会绘制此功能区滑块。

rect
[in] 一个矩形,指定功能区滑块上的缩放按钮的边界。

bIsZoomOut
[in] 一个布尔参数,指示框架绘制的按钮。 值为 TRUE 表示带有“-”的左按钮(用于缩小)。值为 FALSE 表示带有“+”的右按钮(用于放大)。

bIsHighlighted
[in] 一个布尔参数,指示按钮是否突出显示。

bIsPressed
[in] 一个布尔参数,指示是否已按下按钮。

bIsDisabled
[in] 一个布尔参数,指示按钮是否不可用。

注解

默认情况下,功能区滑块上的缩放按钮是一个圆圈,中间有一个 + 或 - 符号。 若要自定义缩放按钮的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawRibbonStatusBarPane

框架在状态栏上绘制窗格时调用此方法。

virtual COLORREF OnDrawRibbonStatusBarPane(
    CDC* pDC,
    CMFCRibbonStatusBar* pBar,
    CMFCRibbonStatusBarPane* pPane);

参数

pDC
[in] 指向设备上下文的指针。

pBar
[in] 一个指向包含窗格的状态栏的指针。

pPane
[in] 一个指向状态栏窗格的指针。 框架会绘制此 CMFCRibbonStatusBarPane 对象。

返回值

一个保留值。 默认实现将返回 -1。

备注

若要自定义状态栏上窗格的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawRibbonTabsFrame

框架在围绕一组功能区选项卡绘制框架时调用此方法。

virtual COLORREF OnDrawRibbonTabsFrame(
    CDC* pDC,
    CMFCRibbonBar* pWndRibbonBar,
    CRect rectTab);

参数

pDC
一个指向设备上下文的指针。

pWndRibbonBar
一个指向 CMFCRibbonBar 对象的指针。 框架绘制此功能区栏的框架。

rectTab
一个矩形,指定功能区选项卡的边界。

返回值

一个保留值。 默认情况下,此方法返回 -1。

注解

在派生的虚拟管理器中替代此方法,以围绕功能区上的一组选项卡自定义框架。

CMFCVisualManager::OnDrawScrollButtons

virtual void OnDrawScrollButtons(
    CDC* pDC,
    const CRect& rect,
    const int nBorderSize,
    int iImage,
    BOOL bHilited);

参数

[in] pDC
[in] rect
[in] nBorderSize
[in] iImage
[in] bHilited

注解

CMFCVisualManager::OnDrawSeparator

框架在绘制分隔符时调用此方法。

virtual void OnDrawSeparator(
    CDC* pDC,
    CBasePane* pBar,
    CRect rect,
    BOOL bIsHoriz);

参数

pDC
[in] 一个指向控件条的设备上下文的指针。

pBar
[in] 一个指向包含分隔符的窗格的指针。

rect
[in] 一个矩形,指定分隔符的边界。

bIsHoriz
[in] 一个布尔参数,指示已停靠的窗格的方向。 值为 TRUE 指示窗格水平停靠。 值为 FALSE 指示窗格垂直停靠。

备注

在控件条上使用分隔符来分隔相关图标的组。 此方法的默认实现显示标准分隔符。 若要自定义分隔符的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawShowAllMenuItems

virtual void OnDrawShowAllMenuItems(
    CDC* pDC,
    CRect rect,
    CMFCVisualManager::AFX_BUTTON_STATE state);

参数

[in] pDC
[in] rect
[in] state

备注

CMFCVisualManager::OnDrawSpinButtons

框架在绘制 CMFCSpinButtonCtrl 类的实例时调用此方法。

virtual void OnDrawSpinButtons(
    CDC* pDC,
    CRect rectSpin,
    int nState,
    BOOL bOrientation,
    CMFCSpinButtonCtrl* pSpinCtrl);

参数

pDC
[in] 指向设备上下文的指针。

rectSpin
[in] 一个矩形,指定调节控件的边界。

nState
[in] 一个指示调节控件状态的标志。 有关详细信息,请参阅备注部分。

bOrientation
[in] 一个布尔参数,指定调节控件的方向。 值为 TRUE 表示调节控件是水平的。 值为其他表示它是垂直的。

pSpinCtrl
[in] 一个指向调节控件的指针。 框架会绘制此控件的按钮。

注解

nState 参数指示调节控件的状态。 此参数为下列值之一:

  • AFX_SPIN_PRESSEDUP

  • AFX_SPIN_PRESSEDDOWN

  • AFX_SPIN_HIGHLIGHTEDUP

  • AFX_SPIN_HIGHLIGHTEDDOWN

  • AFX_SPIN_DISABLED

若要自定义调节控件的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawSplitterBorder

框架在 CSplitterWndEx 类实例周围绘制边框时调用此方法。

virtual void OnDrawSplitterBorder(
    CDC* pDC,
    CSplitterWndEx* pSplitterWnd,
    CRect rect);

参数

pDC
[in] 指向设备上下文的指针。

pSplitterWnd
[in] 一个指向拆分器窗口的指针。 框架会绘制此窗口的边框。

rect
[in] 一个矩形,指定拆分器窗口的边界。

注解

若要自定义拆分器窗口的边框外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawSplitterBox

框架在为 CSplitterWndEx 类的实例绘制拖动框时调用此方法。 当用户选择拆分器栏并更改子窗口的尺寸时,会显示拖动框。

virtual void OnDrawSplitterBox(
    CDC* pDC,
    CSplitterWndEx* pSplitterWnd,
    CRect& rect);

参数

pDC
[in] 指向设备上下文的指针。

pSplitterWnd
[in] 一个指向拆分器窗口的指针。 框架绘制此拆分器窗口的框。

rect
[in] 一个矩形,指定拆分器窗口的边界。

注解

若要自定义拆分器窗口的拖动框外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawStatusBarPaneBorder

框架在绘制 CMFCStatusBar 对象的边框时调用此方法。

virtual void OnDrawStatusBarPaneBorder(
    CDC* pDC,
    CMFCStatusBar* pBar,
    CRect rectPane,
    UINT uiID,
    UINT nStyle);

参数

pDC
[in] 指向设备上下文的指针。

pBar
[in] 一个指向 CMFCStatusBar 对象的指针。 框架会绘制此状态栏对象。

rectPane
[in] 一个矩形,指定状态栏的边界。

uiID
[in] 状态栏的 ID。

nStyle
[in] 状态栏的样式。

备注

若要自定义 CMFCStatusBar 对象的边框外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawStatusBarProgress

框架在 CMFCStatusBar 对象上绘制进度指示器时调用此方法。

virtual void OnDrawStatusBarProgress(
    CDC* pDC,
    CMFCStatusBar* pStatusBar,
    CRect rectProgress,
    int nProgressTotal,
    int nProgressCurr,
    COLORREF clrBar,
    COLORREF clrProgressBarDest,
    COLORREF clrProgressText,
    BOOL bProgressText);

参数

pDC
[in] 一个指向状态栏设备上下文的指针。

pStatusBar
[in] CMFCStatusBar 对象,其中包含进度栏。

rectProgress
[in] 一个矩形,指定进度栏的边界。

nProgressTotal
[in] 进度栏的总数。

nProgressCurr
[in] 进度栏的当前进度。

clrBar
[in] 一个 COLORREF 参数,指示进度栏的初始颜色。 该值是颜色渐变的开始或进度栏的完整颜色。

clrProgressBarDest
[in] 一个 COLORREF 参数,指示进度栏颜色渐变结束。 如果 clrProgressBarDest 为 -1,则框架不会将进度栏绘制为颜色渐变, 而是使用 clrBar 指定的颜色填充整个进度栏。

clrProgressText
[in] 一个 COLORREF 参数,指示当前进度的文本表示形式的文本颜色。 如果将 bProgressText 设置为 FALSE,则会忽略此参数。

bProgressText
[in] 一个布尔参数,指示是否显示当前进度的文本表示形式。

备注

若要自定义 CMFCStatusBar 对象的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawStatusBarSizeBox

框架在绘制 CMFCStatusBar 的大小框时调用此方法。

virtual void OnDrawStatusBarSizeBox(
    CDC* pDC,
    CMFCStatusBar* pStatBar,
    CRect rectSizeBox);

参数

pDC
[in] 指向设备上下文的指针。

pStatBar
[in] 一个指向状态栏的指针。 框架会绘制此状态栏的大小框。

rectSizeBox
[in] 一个矩形,指定大小框的边界。

备注

若要自定义 CMFCStatusBar 上的大小框的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawTab

框架在绘制 CMFCBaseTabCtrl 对象的选项卡时调用此方法。

virtual void OnDrawTab(
    CDC* pDC,
    CRect rectTab,
    int iTab,
    BOOL bIsActive,
    const CMFCBaseTabCtrl* pTabWnd);

参数

pDC
[in] 指向设备上下文的指针。

rectTab
[in] 一个矩形,指定选项卡控件的边界。

iTab
[in] 框架绘制的选项卡的索引。

bIsActive
[in] 一个布尔参数,指定选项卡是否处于活动状态。

pTabWnd
[in] 一个指向 CMFCBaseTabCtrl 对象的指针。 框架会绘制此选项卡控件。

备注

CMFCBaseTabCtrl 对象在处理 WM_PAINT 消息时调用此方法。

替代派生类中的此方法以自定义选项卡的外观。

CMFCVisualManager::OnDrawTabCloseButton

框架会在活动选项卡上绘制“关闭”按钮时调用此方法。

virtual void OnDrawTabCloseButton(
    CDC* pDC,
    CRect rect,
    const CMFCBaseTabCtrl* pTabWnd,
    BOOL bIsHighlighted,
    BOOL bIsPressed,
    BOOL bIsDisabled);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定“关闭”按钮的边界。

pTabWnd
[in] 一个指向选项卡控件的指针。 框架绘制此选项卡控件的“关闭”按钮。

bIsHighlighted
[in] 一个布尔参数,指示“关闭”按钮是否突出显示。

bIsPressed
[in] 一个布尔参数,指示“关闭”按钮是否已按下。

bIsDisabled
[in] 一个布尔参数,指示“关闭”按钮是否已禁用。

备注

在派生的虚拟管理器中替代此方法,以自定义 pTabWnd 的活动选项卡上的“关闭”按钮的外观。

CMFCVisualManager::OnDrawTabContent

框架会在绘制 CMFCBaseTabCtrl 类实例内部的内容时调用此方法。

virtual void OnDrawTabContent(
    CDC* pDC,
    CRect rectTab,
    int iTab,
    BOOL bIsActive,
    const CMFCBaseTabCtrl* pTabWnd,
    COLORREF clrText);

参数

pDC
[in] 指向设备上下文的指针。

rectTab
[in] 一个矩形,指定选项卡内部的边界。

iTab
[in] 选项卡的从零开始的索引。框架绘制此选项卡的内部。

bIsActive
[in] 一个布尔参数,指示选项卡是否处于活动状态。

pTabWnd
[in] 一个指向选项卡式控件的指针,该控件包含要绘制的选项卡。

clrText
[in] 选项卡内部的文本颜色。

备注

选项卡的内部包含选项卡的文本和图标。请在派生的虚拟管理器中替代此方法,以自定义选项卡的外观。

CMFCVisualManager::OnDrawTabsButtonBorder

框架在绘制选项卡按钮的边框时调用此方法。

virtual void OnDrawTabsButtonBorder(
    CDC* pDC,
    CRect& rect,
    CMFCButton* pButton,
    UINT uiState,
    CMFCBaseTabCtrl* pWndTab);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定选项卡按钮的边界。

pButton
[in] 一个指向 CMFCButton 对象的指针。 框架会绘制此 CMFCButton 实例的边框。

uiState
[in] 一个无符号整数,指定按钮的状态。

pWndTab
[in] 一个指向父级选项卡窗口的指针。

备注

若要自定义选项卡按钮的边框外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnDrawTask

框架在绘制 CMFCTasksPane 对象时调用此方法。

virtual void OnDrawTask(
    CDC* pDC,
    CMFCTasksPaneTask* pTask,
    CImageList* pIcons,
    BOOL bIsHighlighted = FALSE,
    BOOL bIsSelected = FALSE);

参数

pDC
[in] 指向设备上下文的指针。

pTask
[in] 一个指向 CMFCTasksPaneTask 对象的指针。 框架会绘制此任务。

pIcons
[in] 一个指向与任务窗格关联的图像列表的指针。 每个任务都包含此列表中的一个图像的索引。

bIsHighlighted
[in] 一个布尔参数,指定显示的任务是否突出显示。

bIsSelected
[in] 一个布尔参数,指定是否已选中显示的任务。

备注

框架以图标加文本的形式显示任务栏上的任务。 pIcons 参数包含 pTask 指示的任务的图标。

若要自定义任务栏上任务的外观,请在派生类中替代此方法。

CMFCVisualManager::OnDrawTasksGroupAreaBorder

框架在 CMFCTasksPane 类上的组周围绘制边框时调用此方法。

virtual void OnDrawTasksGroupAreaBorder(
    CDC* pDC,
    CRect rect,
    BOOL bSpecial = FALSE,
    BOOL bNoTitle = FALSE);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定任务窗格上组区域的边界。

bSpecial
[in] 一个布尔参数,指定是否突出显示边框。 值为 TRUE 指示突出显示边框。

bNoTitle
[in] 一个布尔参数,指定组区域是否有标题。 值为 TRUE 指示组区域没有标题。

备注

若要自定义任务窗格上组区域周围的边框,请在派生类中替代此函数。

CMFCVisualManager::OnDrawTasksGroupCaption

框架在绘制 CMFCTasksPaneTaskGroup 对象的标题栏时调用此方法。

virtual void OnDrawTasksGroupCaption(
    CDC* pDC,
    CMFCTasksPaneTaskGroup* pGroup,
    BOOL bIsHighlighted = FALSE,
    BOOL bIsSelected = FALSE,
    BOOL bCanCollapse = FALSE);

参数

pDC
[in] 指向设备上下文的指针。

pGroup
[in] 一个指向 CMFCTasksPaneTaskGroup 对象的指针。 框架会绘制此组的标题。

bIsHighlighted
[in] 一个布尔参数,指示是否突出显示组。

bIsSelected
[in] 一个布尔参数,指示当前已选中组。

bCanCollapse
[in] 一个布尔参数,指示是否可折叠组。

备注

任务组显示在 CMFCTasksPane 对象上。

若要自定义 CMFCTasksPaneTaskGroup 的标题栏,请在派生类中替代此方法。

CMFCVisualManager::OnDrawTasksGroupIcon

virtual void OnDrawTasksGroupIcon(
    CDC* pDC,
    CMFCTasksPaneTaskGroup* pGroup,
    int nIconHOffset = 5,
    BOOL bIsHighlighted = FALSE,
    BOOL bIsSelected = FALSE,
    BOOL bCanCollapse = FALSE);

参数

[in] pDC
[in] pGroup
[in] nIconHOffset
[in] bIsHighlighted
[in] bIsSelected
[in] bCanCollapse

备注

CMFCVisualManager::OnDrawTearOffCaption

框架在绘制 CMFCPopupMenu 类的标题栏时调用此方法。

virtual void OnDrawTearOffCaption(
    CDC* pDC,
    CRect rect,
    BOOL bIsActive);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定标题栏的边界。

bIsActive
[in] 如果标题栏处于活动状态,则为 TRUE;否则为 FALSE。

备注

CMFCPopupMenu 对象处理 WM_PAINT 消息,并且必须绘制拖曳标题栏时,框架将调用此函数。

若要自定义拖曳栏的标题栏外观,请在派生类中替代此方法。

CMFCVisualManager::OnDrawToolBoxFrame

virtual void OnDrawToolBoxFrame(
    CDC* pDC,
    const CRect& rect);

参数

[in] pDC
[in] rect

备注

CMFCVisualManager::OnEraseMDIClientArea

框架在擦除 MDI 工作区时调用此方法。

virtual BOOL OnEraseMDIClientArea(
    CDC* pDC,
    CRect rectClient);

参数

pDC
[in] 指向设备上下文的指针。

rectClient
[in] 一个矩形,指定 MDI 工作区的边界。

返回值

一个保留值。 默认实现返回 FALSE。

注解

替代此方法,以在虚拟管理器擦除 MDI 工作区时执行自定义代码。

CMFCVisualManager::OnErasePopupWindowButton

virtual void OnErasePopupWindowButton(
    CDC* pDC,
    CRect rectClient,
    CMFCDesktopAlertWndButton* pButton);

参数

[in] pDC
[in] rectClient
[in] pButton

注解

CMFCVisualManager::OnEraseTabsArea

框架在擦除选项卡窗口的选项卡区域时调用此方法。

virtual void OnEraseTabsArea(
    CDC* pDC,
    CRect rect,
    const CMFCBaseTabCtrl* pTabWnd);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定选项卡区域的边界。

pTabWnd
[in] 一个指向选项卡窗口的指针。 框架会擦除指定选项卡窗口的选项卡区域。

备注

CMFCBaseTabCtrl 类对象处理 WM_PAINT 消息并擦除选项卡区域时,框架将调用此函数。

若要自定义选项卡的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnEraseTabsButton

框架在擦除选项卡按钮的文本和图标时调用此方法。

virtual void OnEraseTabsButton(
    CDC* pDC,
    CRect rect,
    CMFCButton* pButton,
    CMFCBaseTabCtrl* pWndTab);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定选项卡按钮的边界。

pButton
[in] 一个指向选项卡按钮的指针。 框架会擦除此按钮的文本和图标。

pWndTab
[in] 一个指向包含选项卡按钮的选项卡控件的指针。

备注

CMFCBaseTabCtrl 对象处理 WM_ERASEBKGND 消息时,框架会擦除按钮的文本和图标。

若要自定义选项卡按钮的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnEraseTabsFrame

框架在擦除 CMFCBaseTabCtrl 类上的框架时调用此方法。

virtual BOOL OnEraseTabsFrame(
    CDC* pDC,
    CRect rect,
    const CMFCBaseTabCtrl* pTabWnd);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定选项卡窗口的边界。

pTabWnd
[in] 一个指向选项卡窗口的指针。 框架会清除此 CMFCBaseTabCtrl 的框架。

返回值

如果此方法成功,则为 TRUE;否则为 FALSE。

注解

此方法使用活动选项卡的背景色填充 rect 指示的区域。当 CMFCBaseTabCtrl 对象处理 WM_PAINT 消息并擦除选项卡框架时,会调用它。

CMFCVisualManager::OnFillAutoHideButtonBackground

框架在填充自动隐藏按钮的背景时调用此方法。

virtual void OnFillAutoHideButtonBackground(
    CDC* pDC,
    CRect rect,
    CMFCAutoHideButton* pButton);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定自动隐藏按钮的边界。

pButton
[in] 一个指向 CMFCAutoHideButton 对象的指针。 框架会填充此“自动隐藏”按钮的背景。

备注

若要自定义“自动隐藏”按钮的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnFillBarBackground

框架在填充 CBasePane 对象的背景时调用此方法。

virtual void OnFillBarBackground(
    CDC* pDC,
    CBasePane* pBar,
    CRect rectClient,
    CRect rectClip,
    BOOL bNCArea = FALSE);

参数

pDC
[in] 一个指向控件条的设备上下文的指针。

pBar
[in] 一个指向 CBasePane 对象的指针。 框架会填充此窗格的背景。

rectClient
[in] 一个矩形,指定窗格的边界。

rectClip
[in] 一个矩形,指定窗格的剪切区域。

bNCArea
[in] 保留值。

注解

此方法的默认实现使用全局变量 afxGlobalData 中的三维背景色填充栏的背景。 若要自定义窗格的背景,请在派生的虚拟管理器中替代此方法。

示例

下面的示例演示如何使用 CMFCVisualManager 类中的 OnFillBarBackground。 此代码片段是 Outlook 演示示例的一部分。

// CDC* pDC
// CRect rectClient
// The this pointer points to a CMailBar class which extends the CPaneDialog class.
CMFCVisualManager::GetInstance()->OnFillBarBackground(pDC, this, rectClient, rectClient);

CMFCVisualManager::OnFillButtonInterior

框架在填充工具栏按钮的背景时调用此方法。

virtual void OnFillButtonInterior(
    CDC* pDC,
    CMFCToolBarButton* pButton,
    CRect rect,
    CMFCVisualManager::AFX_BUTTON_STATE state);

参数

pDC
[in] 一个指向工具栏按钮的设备上下文的指针。

pButton
[in] 一个指向 CMFCToolBarButton 的指针。 框架填充此按钮的背景。

rect
[in] 一个矩形,指定工具栏按钮的边界。

State
[in] 工具栏按钮的状态。

备注

此方法的默认实现使用默认颜色填充背景。 若要自定义工具栏按钮的背景,请在派生的虚拟管理器中替代此方法。

工具栏按钮可能处于 ButtonsIsRegularButtonsIsPressedButtonsIsHighlighted 状态。

CMFCVisualManager::OnFillCaptionBarButton

virtual COLORREF OnFillCaptionBarButton(
    CDC* pDC,
    CMFCCaptionBar* pBar,
    CRect rect,
    BOOL bIsPressed,
    BOOL bIsHighlighted,
    BOOL bIsDisabled,
    BOOL bHasDropDownArrow,
    BOOL bIsSysButton);

参数

[in] pDC
[in] pBar
[in] rect
[in] bIsPressed
[in] bIsHighlighted
[in] bIsDisabled
[in] bHasDropDownArrow
[in] bIsSysButton

返回值

备注

CMFCVisualManager::OnFillCommandsListBackground

框架在填充命令列表中的工具栏按钮的背景时调用此方法。 此命令列表是自定义对话框的一部分。

virtual COLORREF OnFillCommandsListBackground(
    CDC* pDC,
    CRect rect,
    BOOL bIsSelected = FALSE);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定按钮的边界。

bIsSelected
[in] 一个布尔参数,指示是否选中按钮。

返回值

工具栏按钮的文本颜色。

备注

有关自定义列表的详细信息,请参阅 CMFCToolBarButton::OnDrawOnCustomizeList。 此方法的默认实现基于当前所选外观的配色方案填充背景。

CMFCVisualManager::OnFillHeaderCtrlBackground

框架在填充标题控件的背景时调用此方法。

virtual void OnFillHeaderCtrlBackground(
    CMFCHeaderCtrl* pCtrl,
    CDC* pDC,
    CRect rect);

参数

pCtrl
[in] 一个指向 CMFCHeaderCtrl 对象的指针。 框架会填充此标题控件的背景。

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,它指定标头控件的边界。

备注

若要自定义标头控件的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnFillMiniFrameCaption

框架在填充微型框窗口的标题栏时调用此方法。

virtual COLORREF OnFillMiniFrameCaption(
    CDC* pDC,
    CRect rectCaption,
    CPaneFrameWnd* pFrameWnd,
    BOOL bActive);

参数

pDC
[in] 指向设备上下文的指针。

rectCaption
[in] 一个矩形,指定标题栏的边界。

pFrameWnd
[in] 一个指向微型框窗口的指针。 框架会绘制此窗口的标题栏。

bActive
[in] 一个布尔参数,指示窗口是否处于活动状态。

返回值

用于填充标题栏背景的颜色。

备注

此方法的默认实现使用活动外观的当前标题颜色填充标题栏。

CMFCVisualManager::OnFillOutlookBarCaption

框架在填充 Outlook 标题栏的背景时调用此方法。

virtual void OnFillOutlookBarCaption(
    CDC* pDC,
    CRect rectCaption,
    COLORREF& clrText);

参数

pDC
[in] 指向设备上下文的指针。

rectCaption
[in] 一个矩形,指定标题栏的边界。

clrText
[out] 对 COLORREF 参数的引用。 该方法将标题栏上的文本颜色写入此参数。

备注

此方法的默认实现使用基于当前外观的阴影的颜色填充标题栏。 若要自定义 Outlook 标题栏的颜色,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnFillOutlookPageButton

框架在填充 Outlook 页面按钮的内部时调用此方法。

virtual void OnFillOutlookPageButton(
    CDC* pDC,
    const CRect& rect,
    BOOL bIsHighlighted,
    BOOL bIsPressed,
    COLORREF& clrText);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定 Outlook 页面按钮的边界。

bIsHighlighted
[in] 一个布尔参数,指定按钮是否突出显示。

bIsPressed
[in] 一个布尔参数,指定是否已按下按钮。

clrText
[out] 对 COLORREF 参数的引用。 此方法将 Outlook 页面按钮的文本颜色存储在此参数中。

注解

若要自定义 Outlook 页面按钮的外观,请在派生的虚拟管理器中替代此函数。

CMFCVisualManager::OnFillPopupWindowBackground

框架在填充弹出窗口的背景时调用此方法。

virtual void OnFillPopupWindowBackground(
    CDC* pDC,
    CRect rect);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定弹出窗口的边界。

备注

若要自定义弹出窗口的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnFillRibbonButton

框架在填充功能区按钮的内部时调用此方法。

virtual COLORREF OnFillRibbonButton(
    CDC* pDC,
    CMFCRibbonButton* pButton);

参数

pDC
[in] 指向设备上下文的指针。

pButton
[in] 一个指向 CMFCRibbonButton 对象的指针。 框架填充此功能区按钮的内部。

返回值

如果功能区按钮支持文本,则为 pButton 指定的功能区按钮的文本颜色。 如果文本对功能区按钮无效,则为一个 -1 的值。

注解

若要自定义功能区按钮的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnFillRibbonEdit

框架在填充 CMFCRibbonRichEditCtrl 类的实例的内部时调用此方法。

virtual void OnFillRibbonEdit(
    CDC* pDC,
    CMFCRibbonRichEditCtrl* pEdit,
    CRect rect,
    BOOL bIsHighlighted,
    BOOL bIsPaneHighlighted,
    BOOL bIsDisabled,
    COLORREF& clrText,
    COLORREF& clrSelBackground,
    COLORREF& clrSelText);

参数

pDC
[in] 指向设备上下文的指针。

pEdit
[in] 一个指向 CMFCRibbonRichEditCtrl 对象的指针。 框架填充此编辑控件的内部。

rect
[in] 一个矩形,指定编辑控件的边界。

bIsHighlighted
[in] 一个布尔参数,指示编辑控件是否已突出显示。

bIsPaneHighlighted
[in] 一个布尔参数,指示父窗格是否已突出显示。

bIsDisabled
[in] 一个布尔参数,指示编辑控件是否不可用。

clrText
[in] 对编辑控件的文本颜色的引用。

clrSelBackground
[in] 在突出显示编辑控件时对其背景色的引用。

clrSelText
[in] 对编辑控件上所选文本的颜色的引用。

备注

pEdit 所指示的 CMFCRibbonRichEditCtrl 可以是功能区上组合框按钮的一部分。

若要自定义 CMFCRibbonRichEditCtrl 的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnFillRibbonMainPanelButton

框架在填充主面板上的功能区按钮的内部时会调用此方法。

virtual COLORREF OnFillRibbonMainPanelButton(
    CDC* pDC,
    CMFCRibbonButton* pButton);

参数

pDC
[in] 指向设备上下文的指针。

pButton
[in] 一个指向 CMFCRibbonButton 类对象的指针。 框架会填充此功能区按钮。

返回值

如果功能区按钮支持文本,则为 pButton 指定的功能区按钮的文本颜色。 如果文本对功能区按钮无效,则为一个 -1 的值。

注解

若要自定义主面板上的功能区按钮的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnFillRibbonMenuFrame

框架在填充功能区面板的菜单框架时调用此方法。

virtual void OnFillRibbonMenuFrame(
    CDC* pDC,
    CMFCRibbonMainPanel* pPanel,
    CRect rect);

参数

pDC
[in] 指向设备上下文的指针。

pPanel
[in] 一个指向 CMFCRibbonMainPanel 类实例的指针。 框架会填充此功能区面板的菜单框架。

rect
[in] 一个矩形,指定菜单框架的边界。

备注

若要自定义 CMFCRibbonMainPanel 的菜单栏的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnFillRibbonQuickAccessToolBarPopup

virtual void OnFillRibbonQuickAccessToolBarPopup(
    CDC* pDC,
    CMFCRibbonPanelMenuBar* pMenuBar,
    CRect rect);

参数

[in] pDC
[in] pMenuBar
[in] rect

注解

CMFCVisualManager::OnFillSplitterBackground

框架在填充拆分器窗口的背景时调用此方法。

virtual void OnFillSplitterBackground(
    CDC* pDC,
    CSplitterWndEx* pSplitterWnd,
    CRect rect);

参数

pDC
[in] 指向设备上下文的指针。

pSplitterWnd
[in] 一个指向 CSplitterWndEx 类实例的指针。 框架填充此拆分器窗口的背景。

rect
[in] 一个矩形,指定拆分器窗口的边界。

注解

若要自定义拆分器窗口的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnFillTab

框架在填充选项卡窗口的背景时调用此方法。

virtual void OnFillTab(
    CDC* pDC,
    CRect rectFill,
    CBrush* pbrFill,
    int iTab,
    BOOL bIsActive,
    const CMFCBaseTabCtrl* pTabWnd);

参数

pDC
[in] 指向设备上下文的指针。

rectFill
[in] 一个矩形,指定选项卡窗口的边界。

pbrFill
[in] 一个指向画笔的指针。 框架使用此画笔填充选项卡窗口。

iTab
[in] 一个选项卡的从零开始的选项卡索引,框架会为该选项卡填充背景。

bIsActive
[in] 如果选项卡处于活动状态,则为 TRUE;否则为 FALSE。

pTabWnd
[in] 一个指向父选项卡控件的指针。

备注

若要自定义选项卡的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnFillTasksGroupInterior

框架在填充 CMFCTasksPaneTaskGroup 对象的内部时调用此方法。

virtual void OnFillTasksGroupInterior(
    CDC* pDC,
    CRect rect,
    BOOL bSpecial = FALSE);

参数

pDC
[in] 指向设备上下文的指针。

rect
[in] 一个矩形,指定任务组的边界。

bSpecial
[in] 一个布尔值,指示内部是否填充了特殊颜色。

备注

若要自定义任务组的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnFillTasksPaneBackground

框架在填充 CMFCTasksPane 控件的背景时调用此方法。

virtual void OnFillTasksPaneBackground(
    CDC* pDC,
    CRect rectWorkArea);

参数

pDC
[in] 指向设备上下文的指针。

rectWorkArea
[in] 一个矩形,指定任务窗格的边界。

备注

若要自定义 CMFCTasksPane 对象的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnHighlightMenuItem

框架在绘制突出显示的菜单项时调用此方法。

virtual void OnHighlightMenuItem(
    CDC* pDC,
    CMFCToolBarMenuButton* pButton,
    CRect rect,
    COLORREF& clrText);

参数

pDC
[in] 一个指向菜单设备上下文的指针。

pButton
[in] 一个指向要显示的 CMFCToolBarMenuButton 对象的指针。 默认实现不使用此参数。

rect
[in] 一个矩形,指定菜单项的边界。

clrText
[in] 突出显示的菜单项的当前文本颜色。 默认实现不使用此参数。

备注

此方法的默认实现不使用参数 pButton 或 clrText。 它使用标准背景色填充 rect 指定的矩形。

若要自定义突出显示的菜单项的外观,请在派生的虚拟管理器中替代此方法。 使用 clrText 参数修改突出显示的菜单项的文本颜色。

CMFCVisualManager::OnHighlightRarelyUsedMenuItems

框架在绘制突出显示的菜单命令时调用此方法。

virtual void OnHighlightRarelyUsedMenuItems(
    CDC* pDC,
    CRect rectRarelyUsed);

参数

pDC
[in] 指向设备上下文的指针。

rectRarelyUsed
[in] 一个矩形,指定突出显示的命令的边界。

备注

若要自定义突出显示的菜单命令的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnNcActivate

virtual BOOL OnNcActivate(
    CWnd* pWnd,
    BOOL bActive);

参数

[in] pWnd
[in] bActive

返回值

备注

CMFCVisualManager::OnNcPaint

框架在绘制非工作区时调用此方法。

virtual BOOL OnNcPaint(
    CWnd* pWnd,
    const CObList& lstSysButtons,
    CRect rectRedraw);

参数

pWnd
[in] 一个指向窗口的指针,框架会绘制该窗口的非工作区。

lstSysButtons
[in] 系统按钮的列表。 这些按钮也称为标题按钮。

rectRedraw
[in] 一个矩形,指定非工作区的边界。

返回值

一个保留值。 默认实现返回 FALSE。

备注

若要自定义窗口框架和标题按钮的外观,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::OnSetWindowRegion

框架在设置一个包含框架和弹出菜单的区域后调用此方法。

virtual BOOL OnSetWindowRegion(
    CWnd* pWnd,
    CSize sizeWindow);

参数

pWnd
[in] 一个指向窗口的指针,窗口中的区域已更改。

sizeWindow
[in] 窗口的大小。

返回值

如果此方法成功,则为 TRUE;否则为 FALSE。

备注

框架调用此方法,通知虚拟管理器已为框架和弹出菜单设置区域。 有关详细信息,请参阅 CWindow::SetWindowRgn

CMFCVisualManager::OnUpdateSystemColors

框架在更改系统颜色时调用此函数。

virtual void OnUpdateSystemColors();

备注

框架会在处理 WM_SYSCOLORCHANGE 消息的过程中调用此方法。 默认实现不执行任何操作。 如果要在应用程序中的颜色更改时执行自定义代码,请在派生的虚拟管理器中替代此方法。

CMFCVisualManager::RedrawAll

立即重绘应用程序中的所有控件条。

static void RedrawAll();

CMFCVisualManager::RibbonCategoryColorToRGB

virtual COLORREF RibbonCategoryColorToRGB(AFX_RibbonCategoryColor color);

参数

[in] color

返回值

注解

CMFCVisualManager::SetDefaultManager

设置默认管理器。

static void SetDefaultManager(CRuntimeClass* pRTI);

参数

pRTI
[in] 一个指向虚拟管理器的运行时信息的指针。

注解

使用 CMFCVisualManager 类和任何派生的虚拟管理器自定义应用程序的外观。 设置默认虚拟管理器后,此方法会使用新的虚拟管理器重绘应用程序。 若要详细了解如何使用虚拟管理器,请参阅可视化效果管理器

使用此方法可更改应用程序使用的虚拟管理器。

CMFCVisualManager::SetEmbossDisabledImage

启用或禁用已禁用工具栏图像的浮雕模式。

void SetEmbossDisabledImage (BOOL bEmboss = TRUE);

参数

bEmboss
[in] 一个布尔参数,指示是否要为禁用的工具栏图像启用浮雕模式。

注解

使用函数 CMFCVisualManager::IsEmbossDisabledImage 来确定是否启用了浮雕模式。

CMFCVisualManager::SetFadeInactiveImage

启用或禁用菜单或工具栏上非活动图像的照明效果。

void SetFadeInactiveImage(BOOL bFade = TRUE);

参数

bFade
[in] 一个布尔参数,指定是否要启用照明效果。

注解

此功能控制非活动图像是否在菜单或工具栏上显示为淡化。 使用 CMFCVisualManager::IsFadeInactiveImage 方法确定是否已启用此功能。

CMFCVisualManager::SetMenuFlatLook

设置一个标志,指示菜单按钮是否显示为平面。 否则,它们会显示为三维。

void SetMenuFlatLook(BOOL bMenuFlatLook = TRUE);

参数

bMenuFlatLook
[in] 一个布尔参数,指示菜单按钮是否显示为平面。

注解

默认情况下,未启用此功能。

CMFCVisualManager::SetMenuShadowDepth

设置菜单阴影的宽度和高度。

void SetMenuShadowDepth(int nDepth);

参数

nDepth
[in] 一个整数,指定菜单阴影的深度(以像素为单位)。

备注

菜单阴影的高度和宽度必须相同。 默认值为 7 像素。

CMFCVisualManager::SetShadowHighlightedImage

设置一个标志,指示 CMFCVisualManager 是否为突出显示的图像显示阴影。

void SetShadowHighlightedImage(BOOL bShadow = TRUE);

参数

bShadow
[in] 一个布尔参数,指示虚拟管理器是否在突出显示的图像下显示阴影。

备注

默认禁用此功能。

另请参阅

层次结构图

CMFCVisualManager::GetInstance
可视化管理器