CMFCRibbonButtonsGroup 类
CMFCRibbonButtonsGroup
类允许将一系列功能区按钮组织到组中。 组中的所有按钮在水平位置上直接彼此相邻并位于边框中。
语法
class CMFCRibbonButtonsGroup : public CMFCRibbonBaseElement
成员
公共构造函数
名称 | 描述 |
---|---|
CMFCRibbonButtonsGroup::CMFCRibbonButtonsGroup | 构造 CMFCRibbonButtonsGroup 对象。 |
公共方法
名称 | 描述 |
---|---|
CMFCRibbonButtonsGroup::AddButton | 将按钮添加到组。 |
CMFCRibbonButtonsGroup::AddButtons | 将按钮列表添加到组。 |
CMFCRibbonButtonsGroup::GetButton | 返回指向位于指定索引处的按钮的指针。 |
CMFCRibbonButtonsGroup::GetCount | 返回组中的按钮数。 |
CMFCRibbonButtonsGroup::GetImageSize | 返回功能区组中普通图像的图像大小(替代 CMFCRibbonBaseElement::GetImageSize) |
CMFCRibbonButtonsGroup::GetRegularSize | 返回功能区元素的常规大小(替代 CMFCRibbonBaseElement::GetRegularSize) |
CMFCRibbonButtonsGroup::HasImages | 报告 CMFCRibbonButtonsGroup 对象是否包含工具栏图像。 |
CMFCRibbonButtonsGroup::OnDrawImage | 绘制指定按钮的相应图像,具体取决于按钮是常规、突出显示还是禁用。 |
CMFCRibbonButtonsGroup::RemoveAll | 从 CMFCRibbonButtonsGroup 对象删除所有按钮。 |
CMFCRibbonButtonsGroup::SetImages | 将图像分配给组。 |
CMFCRibbonButtonsGroup::SetParentCategory | 设置 CMFCRibbonButtonsGroup 对象的父级 CMFCRibbonCategory 以及其中的所有按钮(替代 CMFCRibbonBaseElement::SetParentCategory) |
备注
该组派生自 CMFCBaseRibbonElement,且能作为单个实体进行操作。 可以将组放置在任何面板或弹出菜单上。
示例
下面的示例演示了如何使用 CMFCRibbonButtonsGroup
类中的各种方法。 该示例演示如何构造 CMFCRibbonButtonsGroup
对象、将图像分配给功能区按钮组,以及向功能区按钮组添加按钮。 此代码片段属于 Draw Client 示例。
CMFCRibbonButtonsGroup *pSBGroup = new CMFCRibbonButtonsGroup;
CMFCToolBarImages images;
images.SetImageSize(CSize(14, 14));
CMFCToolBarImages hotimages;
hotimages.SetImageSize(CSize(14, 14));
if (images.Load(IDB_STATUSBAR_1) && hotimages.Load(IDB_STATUSBAR_2))
{
pSBGroup->SetImages(&images, &hotimages, NULL);
}
pSBGroup->AddButton(new CMFCRibbonButton(ID_FILE_PRINT_PREVIEW, _T(""), 0));
pSBGroup->AddButton(new CMFCRibbonButton(ID_FILE_SUMMARYINFO, _T(""), 1));
// CMFCRibbonStatusBar m_wndStatusBar
m_wndStatusBar.AddExtendedElement(pSBGroup, _T("View Shortcuts"));
继承层次结构
要求
标头:afxribbonbuttonsgroup.h
CMFCRibbonButtonsGroup::AddButton
将按钮添加到组。
void AddButton(CMFCRibbonBaseElement* pButton);
参数
pButton
[in] 指向要添加的按钮的指针。
CMFCRibbonButtonsGroup::AddButtons
将按钮列表添加到组。
void AddButtons(
const CList<CMFCRibbonBaseElement*,CMFCRibbonBaseElement*>& lstButtons);
参数
lstButtons
[in] 指向要添加的按钮的指针列表。
CMFCRibbonButtonsGroup::CMFCRibbonButtonsGroup
构造 CMFCRibbonButtonsGroup
对象。
CMFCRibbonButtonsGroup();
CMFCRibbonButtonsGroup(CMFCRibbonBaseElement* pButton);
参数
pButton
[in] 指定要添加到新创建的 CMFCRibbonButtonsGroup
对象的按钮。
返回值
备注
CMFCRibbonButtonsGroup::GetButton
返回指向位于指定索引处的按钮的指针。
CMFCRibbonBaseElement* GetButton(int i) const;
参数
i
[in] 要返回的按钮的从零开始的索引。
返回值
指向位于指定索引处的按钮的指针。 如果索引不在范围内,则返回 NULL。
注解
CMFCRibbonButtonsGroup::GetCount
返回组中的按钮数。
int GetCount() const;
返回值
组中的按钮数。
CMFCRibbonButtonsGroup::GetImageSize
检索受保护 CMFCToolBarImages
成员 m_Images
的源图像大小。
const CSize GetImageSize() const;
返回值
返回工具栏图像的源图像大小(如果存在)或零 CSize
(如果不存在)。
注解
CMFCRibbonButtonsGroup::GetRegularSize
检索功能区组元素的最大可能大小。
virtual CSize GetRegularSize(CDC* pDC);
参数
pDC
[in] 指向功能区组的设备上下文的指针。
返回值
备注
CMFCRibbonButtonsGroup::HasImages
报告 CMFCRibbonButtonsGroup
对象是否包含工具栏图像。
BOOL HasImages() const;
返回值
如果受保护的 CMFCToolBarImages
成员 m_Images
包含任何图像,则返回 TRUE;否则返回 FALSE。
注解
CMFCRibbonButtonsGroup::OnDrawImage
绘制指定按钮的相应图像,具体取决于按钮是常规、突出显示还是禁用。
virtual void OnDrawImage(
CDC* pDC,
CRect rectImage,
CMFCRibbonBaseElement* pButton,
int nImageIndex);
参数
pDC
[in] 指向 CMFCRibbonButtonsGroup
对象的设备上下文的指针。
rectImage
[in] 要在其中绘制图像的矩形。
pButton
[in] 要为其绘制图像的按钮。
nImageIndex
[in] 要在按钮上绘制的图像的索引(用于常规、突出显示或禁用按钮的三个图像数组之一)。
注解
CMFCRibbonButtonsGroup::RemoveAll
从 CMFCRibbonButtonsGroup
对象删除所有按钮。
void RemoveAll();
备注
CMFCRibbonButtonsGroup::SetImages
将图像分配给功能区按钮组。
void SetImages(
CMFCToolBarImages* pImages,
CMFCToolBarImages* pHotImages,
CMFCToolBarImages* pDisabledImages);
参数
pImages
[in] 常规图像。
pHotImages
[in] 热图像。
pDisabledImages
[in] 禁用图像。
备注
在向组添加按钮之前调用 SetImages
。 图像数必须大于或等于要添加到组中的按钮数。
注意
热图像是当用户将鼠标悬停在按钮上时显示的图像。 禁用图像是禁用按钮时显示的图像。
CMFCRibbonButtonsGroup::SetParentCategory
设置 CMFCRibbonButtonsGroup
对象的父级 CMFCRibbonCategory
以及其中的所有按钮。
virtual void SetParentCategory(CMFCRibbonCategory* pCategory);
参数
pCategory
[in] 指向要设置的父类别的指针(功能区控件中制表符分隔的组被称为类别)。