CMFCRibbonCategory 类
CMFCRibbonCategory
类可以实现包含一组功能区面板的功能区选项卡。
语法
class CMFCRibbonCategory : public CObject
成员
受保护构造函数
名称 | 描述 |
---|---|
CMFCRibbonCategory::CMFCRibbonCategory | 构造函数。 |
公共方法
备注
通常,通过调用 CMFCRibbonBar::AddCategory 间接创建功能区类别,它返回一个指向新创建的功能区类别的指针。 通过调用 CMFCRibbonCategory::AddPanel 将面板添加到类别。
CMFCRibbonTab
类绘制功能区类别。 它派生自 CMFCRibbonBaseElement 类。
以下示例演示如何创建功能区类别并向其添加面板。
// Create a new ribbon category and get a pointer to it`
CMFCRibbonCategory* pCategory = m_wndRibbonBar.AddCategory
(_T("&Write"), // Category name
IDB_WRITE, // Category small images (16 x 16)
IDB_WRITE_LARGE); // Category large images (32 x 32)
// Add a panel to the new category
CMFCRibbonPanel* pPanel = pCategory->AddPanel (
_T("Clipboard"), // Panel name
m_PanelIcons.ExtractIcon (0)); // Panel icon
下图显示了 RibbonApp 示例应用程序中的“开始”类别图。
继承层次结构
CMFCRibbonCategory
要求
标头:afxribboncategory.h
CMFCRibbonCategory::AddHidden
将指定的功能区元素添加到“自定义”对话框上显示的功能区元素数组。
void AddHidden(CMFCRibbonBaseElement* pElem);
参数
pElem
[in] 指向功能区元素的指针。
注解
“自定义”对话框上的功能区元素是可添加到快速访问工具栏的命令。
CMFCRibbonCategory::AddPanel
为功能区类别创建功能区面板。
CMFCRibbonPanel* AddPanel(
LPCTSTR lpszPanelName,
HICON hIcon = 0,
CRuntimeClass* pRTI = NULL);
参数
lpszPanelName
[in] 指向新功能区面板名称的指针。
hIcon
[in] 新功能区面板的默认图标的句柄。
pRTI
[in] 指向自定义功能区面板的运行时类信息的指针。
返回值
如果此方法成功,则为指向新功能区面板的指针;如果未创建面板,则为 NULL。
注解
如果要创建自定义功能区面板,必须在 pRTI 中指定其运行时类信息。 自定义功能区面板类必须派生自 CMFCRibbonPanel
类。
当没有足够的空间来显示功能区元素时,将显示功能区面板的默认图标。
示例
以下示例演示了如何在 CMFCRibbonCategory
类中使用 AddPanel
方法。
// Create "Favorites" panel:
strTemp.LoadString(IDS_RIBBON_FAVORITES);
// CMFCRibbonCategory* pCategoryCustom
CMFCRibbonPanel *pPanelFavorites = pCategoryCustom->AddPanel(strTemp,
m_PanelImages.ExtractIcon(15));
CMFCRibbonCategory::CMFCRibbonCategory
构造并初始化 CMFCRibbonCategory 对象。
CMFCRibbonCategory(
CMFCRibbonBar* pParenrRibbonBar,
LPCTSTR lpszName,
UINT uiSmallImagesResID,
UINT uiLargeImagesResID,
CSize sizeSmallImage = CSize(16,
16),
CSize sizeLargeImage = CSize(32,
32));
参数
pParenrRibbonBar
[in] 指向功能区类别的父功能区栏的指针。
lpszName
[in] 功能区类别的名称。
uiSmallImagesResID
[in] 功能区类别中功能区元素使用的小型图像的图像列表的资源 ID。
uiLargeImagesResID
[in] 功能区类别中功能区元素使用的大型图像的图像列表的资源 ID。
sizeSmallImage
[in] 功能区类别中功能区元素的小型图像的默认大小。
sizeLargeImage
[in] 功能区类别中功能区元素的大型图像的默认大小。
CMFCRibbonCategory::CopyFrom
将指定的 CMFCRibbonCategory 的状态复制到当前的 CMFCRibbonCategory 对象。
virtual void CopyFrom(CMFCRibbonCategory& src);
参数
src
[in] 源 CMFCRibbonCategory
对象。
备注
CMFCRibbonCategory::FindByData
检索与指定数据关联的功能区元素。
CMFCRibbonBaseElement* FindByData(
DWORD_PTR dwData,
BOOL bVisibleOnly = TRUE) const;
参数
dwData
[in] 与功能区元素关联的数据。
bVisibleOnly
[in] TRUE 表示在搜索中包括快速访问功能区元素;FALSE 表示在搜索中排除快速访问功能区元素。
返回值
如果此方法成功,则为指向功能区元素的指针;否则为 NULL。
备注
CMFCRibbonCategory::FindByID
检索与指定命令 ID 关联的功能区元素。
CMFCRibbonBaseElement* FindByID(
UINT uiCmdID,
BOOL bVisibleOnly = TRUE) const;
参数
uiCmdID
[in] 与功能区元素关联的命令 ID。
bVisibleOnly
[in] TRUE 表示在搜索中包括快速访问功能区元素;FALSE 表示在搜索中排除快速访问功能区元素。
返回值
如果此方法成功,则为指向功能区元素的指针;否则为 NULL。
注解
CMFCRibbonCategory::FindPanelWithElem
检索包含指定功能区元素的功能区面板。
CMFCRibbonPanel* FindPanelWithElem(const CMFCRibbonBaseElement* pElement);
参数
pElement
[in] 指向功能区元素的指针。
返回值
如果此方法成功,则为指向功能区面板的指针;否则为 NULL。
备注
CMFCRibbonCategory::GetContextID
检索功能区类别的上下文 ID。
UINT GetContextID() const;
返回值
功能区类别的上下文 ID。
注解
如果功能区类别不是上下文功能区类别,则上下文 ID 为 0。
CMFCRibbonCategory::GetData
检索与功能区类别关联的用户定义的数据。
DWORD_PTR GetData() const;
返回值
与功能区类别关联的用户定义的数据。
CMFCRibbonCategory::GetDroppedDown
检索指向当前显示其弹出菜单的功能区元素的指针。
CMFCRibbonBaseElement* GetDroppedDown();
返回值
如果此方法成功,则为指向功能区元素的指针;否则为 NULL。
备注
CMFCRibbonCategory::GetElements
检索功能区类别中的所有功能区元素。
void GetElements(
CArray <CMFCRibbonBaseElement*, CMFCRibbonBaseElement*>& arElements);
参数
arElements
[in, out] 对功能区元素的 CArray 的引用。
备注
设计用于快速访问工具栏的功能区元素包含在数组中。
CMFCRibbonCategory::GetElementsByID
检索与指定命令 ID 关联的所有功能区元素。
void GetElementsByID(
UINT uiCmdID,
CArray <CMFCRibbonBaseElement*, CMFCRibbonBaseElement*>& arElements);
参数
uiCmdID
[in] 与功能区元素关联的命令 ID。
arElements
[in, out] 对功能区元素的 CArray 的引用。
备注
设计用于快速访问工具栏的功能区元素包含在数组中。
CMFCRibbonCategory::GetFirstVisibleElement
检索属于功能区类别的第一个可见元素。
CMFCRibbonBaseElement* GetFirstVisibleElement() const;
返回值
指向第一个可见元素的指针;如果类别没有任何可见元素,则可能为 NULL。
备注
CMFCRibbonCategory::GetFocused
返回焦点元素。
CMFCRibbonBaseElement* GetFocused();
返回值
指向焦点元素的指针或 NULL。
注解
CMFCRibbonCategory::GetHighlighted
返回突出显示的元素。
CMFCRibbonBaseElement* GetHighlighted();
返回值
如果未突出显示任何元素,则为指向突出显示的元素的指针或 NULL。
备注
CMFCRibbonCategory::GetImageCount
检索功能区类别中包含的指定图像列表中的图像数。
int GetImageCount(BOOL bIsLargeImage) const;
参数
bIsLargeImage
[in] 对于大型图像列表中的图像数,为 TRUE;对于小型图像列表中的图像数,为 FALSE。
返回值
指定图像列表中的图像数。
备注
CMFCRibbonCategory::GetImageSize
检索功能区类别中包含的指定图像列表中的图像大小。
CSize GetImageSize(BOOL bIsLargeImage) const;
参数
bIsLargeImage
[in] 对于大型图像的大小,为 TRUE;对于小型图像的大小,为 FALSE。
返回值
指定的图像列表中的图像大小。
注解
检索到的大小包括全局图像比例系数。
CMFCRibbonCategory::GetItemIDsList
检索功能区类别中包含的功能区元素的命令 ID。
void GetItemIDsList(
CList<UINT, UINT>& lstItems,
BOOL bHiddenOnly = FALSE) const;
参数
lstItems
[out] 功能区类别中功能区元素的命令 ID 列表。
bHiddenOnly
[in] TRUE 表示排除功能区类别中功能区面板上显示的功能区元素;FALSE 表示包括功能区类别中的所有功能区元素。
备注
CMFCRibbonCategory::GetLargeImages
检索功能区类别中包含的大型图像的列表。
CMFCToolBarImages& GetLargeImages();
返回值
功能区类别中包含的大型图像的列表。
CMFCRibbonCategory::GetLastVisibleElement
检索属于功能区类别的最后一个可见元素。
CMFCRibbonBaseElement* GetLastVisibleElement() const;
返回值
指向最后一个可见元素的指针;如果类别没有任何可见元素,则可能为 NULL。
备注
CMFCRibbonCategory::GetMaxHeight
检索功能区类别中包含的功能区面板的最大高度。
int GetMaxHeight(CDC* pDC);
参数
pDC
[in] 指向功能区面板的设备上下文的指针。
返回值
功能区类别中包含的功能区面板的最大高度。
备注
检索到的值包括功能区面板的上边距和下边距的高度。
CMFCRibbonCategory::GetName
检索功能区类别的名称。
LPCTSTR GetName() const;
返回值
功能区类别的名称。
备注
CMFCRibbonCategory::GetPanel
返回指向位于指定索引处的功能区面板的指针。
CMFCRibbonPanel* GetPanel(int nIndex);
参数
nIndex
[in] 功能区面板的从零开始的索引。
返回值
指向位于指定索引处的功能区面板的指针。
备注
如果 nIndex 超出范围,则会引发异常。
CMFCRibbonCategory::GetPanelCount
返回功能区类别中的功能区面板数。
int GetPanelCount() const;
返回值
功能区类别中的功能区面板数。
CMFCRibbonCategory::GetPanelFromPoint
检索在指定的点位于功能区面板中的情况下,指向该功能区面板的指针。
CMFCRibbonPanel* GetPanelFromPoint(CPoint point) const;
参数
point
[in] 指针的 x 和 y 坐标,相对于窗口左上角。
返回值
如果此方法成功,则为指向功能区面板的指针;否则为 NULL。
注解
仅测试功能区类别中包含的功能区面板。
CMFCRibbonCategory::GetPanelIndex
检索指定的功能区面板的从零开始的索引。
int GetPanelIndex(const CMFCRibbonPanel* pPanel) const;
参数
pPanel
[in] 指向功能区面板的指针。
返回值
如果此方法成功,则为指定功能区面板的从零开始的索引;否则为 -1。
备注
仅搜索功能区类别中包含的功能区面板。
CMFCRibbonCategory::GetParentButton
检索功能区类别的父功能区元素。
CMFCRibbonBaseElement* GetParentButton() const;
返回值
返回指向父功能区元素的指针;如果没有父元素,则为 NULL。
备注
CMFCRibbonCategory::GetParentMenuBar
返回指向 CMFCRibbonCategory
对象的父菜单栏的指针。
CMFCRibbonPanelMenuBar* GetParentMenuBar() const;
返回值
返回 m_pParentMenuBar
受保护成员的内容。
备注
CMFCRibbonCategory::GetParentRibbonBar
检索功能区类别的父功能区栏。
CMFCRibbonBar* GetParentRibbonBar() const;
返回值
指向功能区类别的父功能区栏的指针。
备注
CMFCRibbonCategory::GetRect
检索功能区类别的显示矩形。
CRect GetRect() const;
返回值
功能区类别的显示矩形。
备注
功能区类别的显示矩形不包括类别选项卡。
CMFCRibbonCategory::GetSmallImages
检索功能区类别中包含的小型图像的列表。
CMFCToolBarImages& GetSmallImages();
返回值
功能区类别中包含的小型图像的列表。
CMFCRibbonCategory::GetTabColor
返回功能区类别选项卡的当前颜色。
AFX_RibbonCategoryColor GetTabColor() const;
返回值
功能区类别选项卡的当前颜色。
注解
返回值可以是以下枚举值之一:
AFX_CategoryColor_Red
AFX_CategoryColor_Orange
AFX_CategoryColor_Yellow
AFX_CategoryColor_Green
AFX_CategoryColor_Blue
AFX_CategoryColor_Indigo
AFX_CategoryColor_Violet
CMFCRibbonCategory::GetTabRect
检索功能区类别选项卡的显示矩形。
CRect GetTabRect() const;
返回值
功能区类别选项卡的显示矩形。
备注
CMFCRibbonCategory::GetTextTopLine
检索功能区类别中显示大型图像的功能区按钮上的文本的垂直位置。
int GetTextTopLine() const;
返回值
显示大型图像的功能区按钮上的文本的垂直位置(以像素为单位)。
注解
CMFCRibbonCategory::GetVisibleElements
检索属于功能区类别的所有可见元素。
void GetVisibleElements(
CArray <CMFCRibbonBaseElement*,
CMFCRibbonBaseElement*>& arElements);
参数
arElements
所有可见元素的数组。
备注
CMFCRibbonCategory::HighlightPanel
突出显示指定的功能区面板。
CMFCRibbonPanel* HighlightPanel(
CMFCRibbonPanel* pHLPanel,
CPoint point);
参数
pHLPanel
[in] 指向要突出显示的功能区面板的指针。
point
[in] 指针的 x 和 y 坐标,相对于窗口左上角。
返回值
指向之前突出显示的功能区面板的指针;如果在调用此方法时未突出显示功能区面板,则为 NULL。
备注
有关如何突出显示功能区面板的详细信息,请参阅 CMFCRibbonPanel::Highlight。
CMFCRibbonCategory::HitTest
检索在指定的点位于功能区元素中的情况下,指向该功能区元素的指针。
CMFCRibbonBaseElement* HitTest(
CPoint point,
BOOL bCheckPanelCaption = FALSE) const;
参数
point
[in] 鼠标指针的 x 和 y 坐标,相对于窗口左上角。
bCheckPanelCaption
[in] TRUE 表示测试功能区面板描述文字;FALSE 表示排除功能区面板描述文字。
返回值
如果此方法成功,则为指向功能区元素的指针;否则为 NULL。
备注
仅测试功能区类别中包含的功能区元素。
CMFCRibbonCategory::HitTestEx
检索在指定的点位于功能区元素中的情况下,该功能区元素的从零开始的索引。
int HitTestEx(CPoint point) const;
参数
point
[in] 鼠标指针的 x 和 y 坐标,相对于窗口左上角。
返回值
如果此方法成功,则为功能区元素的从零开始的索引;否则为 -1。
注解
仅测试功能区类别中包含的功能区元素。
CMFCRibbonCategory::HitTestScrollButtons
如果某个点位于功能区类别的向左或向右滚动按钮内,则返回指向该按钮的指针。
CMFCRibbonBaseElement* HitTestScrollButtons(CPoint point) const;
参数
point
[in] 要测试的点。
返回值
如果 point 位于功能区类别的向左或向右滚动按钮的边框内,则返回指向该按钮的指针,否则返回 NULL。
备注
CMFCRibbonCategory::IsActive
指示功能区类别是否为功能区栏上的活动类别。
BOOL IsActive() const;
返回值
如果功能区类别为活动类别,则为 TRUE;否则为 FALSE。
注解
活动功能区类别显示其功能区面板。
CMFCRibbonCategory::IsVisible
指示功能区类别是否可见。
BOOL IsVisible() const;
返回值
如果功能区类别可见,则为 TRUE;否则为 FALSE。
备注
可见的功能区类别显示类别选项卡。
CMFCRibbonCategory::IsWindows7Look
指示父功能区是否具有 Windows 7 的外观(小型矩形应用程序按钮)。
BOOL IsWindows7Look() const;
返回值
如果父功能区具有 Windows 7 的外观,则为 TRUE;否则为 FALSE。
备注
CMFCRibbonCategory::NotifyControlCommand
将 WM_NOTIFY 命令消息传递到 CMFCRibbonCategory
中的所有 CMFCRibbonPanel
元素,直到消息已经过处理。
virtual BOOL NotifyControlCommand(
BOOL bAccelerator,
int nNotifyCode,
WPARAM wParam,
LPARAM lParam);
参数
bAccelerator
[in] 如果此命令源自加速器,则为 TRUE;否则为 FALSE。
nNotifyCode
[in] 通知代码。
wParam
[in] 消息的 WPARAM 字段。
lParam
[in] 消息的 LPARAM 字段。
返回值
如果已处理消息,则返回 TRUE;否则返回 FALSE。
备注
CMFCRibbonCategory::OnCancelMode
在 CMFCRibbonCategory
的所有 CMFCRibbonPanel
元素中调用取消模式。
virtual void OnCancelMode();
备注
CMFCRibbonCategory::OnDraw
由框架调用以绘制功能区类别。
virtual void OnDraw(CDC* pDC);
参数
pDC
[in] 指向功能区类别的设备上下文的指针。
备注
CMFCRibbonCategory::OnDrawImage
由框架调用以绘制功能区类别上指定的图像。
virtual BOOL OnDrawImage(
CDC* pDC,
CRect rect,
CMFCRibbonBaseElement* pElement,
BOOL bIsLargeImage,
BOOL nImageIndex,
BOOL bCenter);
参数
pDC
[in] 指向图像的设备上下文的指针。
rect
[in] 图像的显示矩形。
pElement
[in] 指向包含图像的功能区元素的指针。
bIsLargeImage
[in] 如果图像尺寸较大,则为 TRUE;如果图像尺寸较小,则为 FALSE。
nImageIndex
[in] 功能区类别中包含的图像数组中图像的从零开始的索引。
bCenter
[in] TRUE 表示在显示矩形中使图像居中;FALSE 表示在显示矩形的左上角绘制图像。
返回值
如果此方法成功,则为 TRUE;否则为 FALSE。
注解
CMFCRibbonCategory::OnDrawMenuBorder
由框架调用以绘制弹出菜单的边框。
virtual void OnDrawMenuBorder(
CDC* pDC,
CMFCRibbonPanelMenuBar* pMenuBar);
参数
pDC
[in] 未使用此参数。
pMenuBar
[in] 未使用此参数。
备注
默认情况下,此方法不执行任何操作。 重写此方法以绘制弹出菜单的边框。
CMFCRibbonCategory::OnKey
当用户按键盘按钮时,由框架调用。
virtual BOOL OnKey(UINT nChar);
参数
nChar
用户按下的键的虚拟键代码。
注解
CMFCRibbonCategory::OnLButtonDown
当用户按鼠标左键时,由框架调用以检索指定点下的功能区元素。
virtual CMFCRibbonBaseElement* OnLButtonDown(CPoint point);
参数
point
[in] 鼠标指针的 x 和 y 坐标,相对于窗口左上角。
返回值
如果此方法成功,则为指向功能区元素的指针;否则为 NULL。
注解
CMFCRibbonCategory::OnLButtonUp
当用户释放鼠标左键,并且指针位于功能区类别上方时,由框架调用。
virtual void OnLButtonUp(CPoint point);
参数
point
[in] 指针的 x 和 y 坐标,相对于窗口左上角。
备注
CMFCRibbonCategory::OnMouseMove
当指针在功能区栏上移动以便更新功能区类别显示时,由框架调用。
virtual void OnMouseMove(CPoint point);
参数
point
[in] 指针的 x 和 y 坐标,相对于窗口左上角。
备注
CMFCRibbonCategory::OnRTLChanged
当布局更改方向时,由框架调用。
virtual void OnRTLChanged(BOOL bIsRTL);
参数
bIsRTL
[in] 如果布局为从右到左,则为 TRUE;如果布局为从左到右,则为 FALSE。
备注
此方法调整功能区类别中包含的所有功能区面板和功能区元素的布局。
CMFCRibbonCategory::OnScrollHorz
在水平方向上滚动功能区类别。
virtual BOOL OnScrollHorz(
BOOL bScrollLeft,
int nScrollOffset = 0);
参数
bScrollLeft
[in] TRUE 表示向左滚动;FALSE 表示向右滚动。
nScrollOffset
[in] 滚动距离(以像素为单位)。
返回值
如果功能区类别在水平方向上移动,则为 TRUE;否则为 FALSE。
注解
CMFCRibbonCategory::OnUpdateCmdUI
在 CMFCRibbonCategory
的每个 CMFCRibbonPanel
元素中调用 OnUpdateCmdUI
成员函数以启用或禁用其中的用户界面元素。
virtual void OnUpdateCmdUI(
CMFCRibbonCmdUI* pCmdUI,
CFrameWnd* pTarget,
BOOL bDisableIfNoHndler);
参数
pCmdUI
[in] 指向 CMFCRibbonCmdUI
对象的指针,该对象指定要启用和禁用的用户界面元素。
pTarget
[in] 指向控制启用或禁用用户界面元素的窗口的指针。
bDisableIfNoHndler
[in] TRUE 表示在消息映射中未定义任何处理程序的情况下禁用用户界面项;否则为 FALSE。
注解
CMFCRibbonCategory::RecalcLayout
调整功能区类别上所有控件的布局。
virtual void RecalcLayout(CDC* pDC);
参数
pDC
[in] 指向功能区类别的设备上下文的指针。
备注
CMFCRibbonCategory::RemovePanel
从功能区类别中移除功能区面板。
BOOL RemovePanel(
int nIndex,
BOOL bDelete = TRUE);
参数
nIndex
[in] 要移除的面板的索引号。 通过调用 CMFCRibbonCategory::GetPanelIndex 方法获取。
bDelete
[in] TRUE 表示从内存中删除面板对象;FALSE 表示移除面板对象而不删除它。
返回值
如果此方法成功,则为 TRUE;否则为 FALSE。
CMFCRibbonCategory::ReposPanels
调整功能区类别中包含的功能区面板上所有控件的布局。
virtual void ReposPanels(CDC* pDC);
参数
pDC
[in] 指向功能区类别中包含的功能区面板的设备上下文的指针。
注解
CMFCRibbonCategory::SetCollapseOrder
定义功能区类别的功能区面板的折叠顺序。
void SetCollapseOrder(const CArray<int,int>& arCollapseOrder);
参数
arCollapseOrder
[in] 指定折叠顺序。 该数组包含功能区面板的从零开始的索引。
备注
库定义折叠顺序。 但是,可以通过向类别提供指定折叠顺序的索引列表来自定义此行为。
当类别检测到它必须折叠功能区面板时,它会查找指定列表中的下一个元素。 如果列表为空或未指定足够的元素,则类别使用内部算法。
例如,类别有三个功能区面板,可以多次折叠,直到所有面板处于完全折叠状态。 可以设置以下折叠顺序:0、0、2、2。 在这种情况下,类别将折叠面板 0 两次,折叠面板 2 两次。 索引为 1 的面板保持不折叠的状态。
示例
以下示例演示了如何在 CMFCRibbonCategory
类中使用 SetCollapseOrder
方法。 该示例演示了如何为折叠顺序构造数组,以及如何将折叠顺序设置为功能区类别。
CArray<int, int> arCollapseOrder;
arCollapseOrder.Add(0);
arCollapseOrder.Add(1);
arCollapseOrder.Add(2);
// CMFCRibbonCategory* pCategoryHome
pCategoryHome->SetCollapseOrder(arCollapseOrder);
CMFCRibbonCategory::SetData
设置与功能区类别关联的用户定义的数据。
void SetData(DWORD_PTR dwData);
参数
dwData
[in] 用户定义的数据。
CMFCRibbonCategory::SetKeys
将快捷键提示分配给功能区类别。
void SetKeys(LPCTSTR lpszKeys);
参数
lpszKeys
[in] 快捷键提示文本。
注解
当用户按 Alt 键或 F10 键时,将显示快捷键提示。
CMFCRibbonCategory::SetName
将名称和快捷键提示分配给功能区类别。
void SetName(LPCTSTR lpszName);
参数
lpszName
[in] 功能区类别的名称和快捷键提示。
备注
若要设置功能区类别的快捷键提示,请将换行符转义序列后跟快捷键提示字符追加到 lpszName。
CMFCRibbonCategory::SetTabColor
设置功能区类别的颜色。
void SetTabColor(AFX_RibbonCategoryColor color);
参数
color
[in] 指定功能区类别的新颜色。
备注
颜色可以是下列值之一:
AFX_CategoryColor_None
AFX_CategoryColor_Red
AFX_CategoryColor_Orange
AFX_CategoryColor_Yellow
AFX_CategoryColor_Green
AFX_CategoryColor_Blue
AFX_CategoryColor_Indigo
AFX_CategoryColor_Violet