CMFCCaptionButton 类
CMFCCaptionButton
类实现在停靠窗格或微型框窗口的标题栏中显示的按钮。 通常,框架会自动创建标题按钮。
语法
class CMFCCaptionButton : public CObject
成员
构造函数
名称 | 描述 |
---|---|
CMFCCaptionButton::CMFCCaptionButton | 构造 CMFCCaptionButton 对象。 |
公共方法
名称 | 描述 |
---|---|
CMFCCaptionButton::GetHit | 返回按钮所表示的命令。 |
CMFCCaptionButton::GetIconID | 返回与按钮关联的图像 ID。 |
CMFCCaptionButton::GetRect | 返回按钮占用的矩形。 |
CMFCCaptionButton::GetSize | 返回按钮的宽度和高度。 |
CMFCCaptionButton::IsMiniFrameButton | 指示标题栏高度是否设置为特小尺寸。 |
CMFCCaptionButton::Move | 设置按钮的绘制位置和窗口显示状态。 |
CMFCCaptionButton::OnDraw | 绘制标题按钮。 |
CMFCCaptionButton::SetMiniFrameButton | 设置标题栏的特小尺寸。 |
注解
可以从 CPaneFrameWnd 类 派生一个类,并使用受保护的方法 AddButton
将标题按钮添加到微型框窗口。
CPaneFrameWnd.h 为两种类型的标题按钮定义命令 ID:
AFX_CAPTION_BTN_PIN - 在停靠窗格支持自动隐藏模式时,显示固定按钮。
AFX_CAPTION_BTN_CLOSE - 在可以关闭或隐藏窗格时,显示“关闭”按钮。
示例
下面的示例演示如何构造 CMFCCaptionButton
对象并设置标题栏的特小尺寸。
CMFCCaptionButton *captionButton = new CMFCCaptionButton(AFX_HTCLOSE);
captionButton->SetMiniFrameButton(true);
继承层次结构
要求
标头:afxcaptionbutton.h
CMFCCaptionButton::CMFCCaptionButton
构造 CMFCCaptionButton
对象。
CMFCCaptionButton();
CMFCCaptionButton(
UINT nHit,
BOOL bLeftAlign = FALSE);
参数
nHit
[in] 与按钮关联的命令。
bLeftAlign
[in] 指定按钮是否为左对齐。
下表列出了 nHit 参数可能的值。
值 | 命令 |
---|---|
AFX_HTCLOSE | 关闭按钮。 |
HTMINBUTTON | 最小化按钮。 |
HTMAXBUTTON | 最大化按钮。 |
AFX_HTLEFTBUTTON | 向左箭头按钮。 |
AFX_HTRIGHTBUTTON | 向右箭头按钮。 |
AFX_HTMENU | 向下键菜单按钮。 |
HTNOWHERE | 默认值,表示无命令。 |
注解
默认情况下,标题按钮不与命令相关联。
标题按钮要么是右对齐,要么是左对齐。
CMFCCaptionButton::GetHit
返回按钮所表示的命令。
UINT GetHit() const;
返回值
按钮表示的命令。
下表列出了可能的返回值。
值 | 命令 |
---|---|
AFX_HTCLOSE | 关闭按钮。 |
HTMINBUTTON | 最小化按钮。 |
HTMAXBUTTON | 最大化按钮。 |
AFX_HTLEFTBUTTON | 向左箭头按钮。 |
AFX_HTRIGHTBUTTON | 向右箭头按钮。 |
AFX_HTMENU | 向下键菜单按钮。 |
HTNOWHERE | 默认值,表示无命令。 |
CMFCCaptionButton::GetIconID
返回与按钮关联的图像 ID。
virtual CMenuImages::IMAGES_IDS GetIconID(
BOOL bHorz,
BOOL bMaximized = FALSE) const;
参数
bHorz
[in] 对于向左键或向右键的图像 ID,为 TRUE;对于向上键或向下键的图像 ID,为 FALSE。
bMaximized
[in] 对于最大化图像 ID,为 TRUE;对于最小化图像 ID,为 FALSE。
返回值
图像 ID。
备注
参数指定最小化或最大化标题按钮的图像 ID。
CMFCCaptionButton::GetRect
返回按钮占用的矩形。
virtual CRect GetRect() const;
返回值
表示按钮位置的矩形。
备注
如果看不到按钮,返回的大小为 0。
CMFCCaptionButton::GetSize
返回按钮的宽度和高度。
static CSize GetSize();
返回值
获取按钮的外部维度。
注解
返回的大小包括按钮边距和边框。
CMFCCaptionButton::IsMiniFrameButton
指示标题栏高度是否设置为特小尺寸。
BOOL IsMiniFrameButton() const;
返回值
如果标题设置为特小尺寸,为 TRUE;否则为 FALSE。
备注
CMFCCaptionButton::Move
设置按钮的绘制位置和窗口显示状态。
void Move(
const CPoint& ptTo,
BOOL bHide = FALSE);
参数
ptTo
[in] 新位置。
bHide
[in] 是否显示按钮。
CMFCCaptionButton::OnDraw
绘制标题按钮。
virtual void OnDraw(
CDC* pDC,
BOOL bActive,
BOOL bHorz = TRUE,
BOOL bMaximized = TRUE,
BOOL bDisabled = FALSE);
参数
pDC
[in] 指向按钮的设备上下文的指针。
bActive
[in] 是否绘制活动按钮图像。
bHorz
[in] 保留以供在派生类中使用。
bMaximized
[in] 是否绘制最大化的按钮的图像。
bDisabled
[in] 是否绘制已启用的按钮的图像。
备注
按钮是最大化或最小化按钮时,使用的是 bMaximized 参数。
CMFCCaptionButton::SetMiniFrameButton
设置标题栏的特小尺寸。
void SetMiniFramebutton(BOOL bSet = TRUE);
参数
bSet
[in] 对于微型标题栏高度,为 TRUE;对于默认标题栏高度,为 FALSE。