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);

继承层次结构

CObject

CMFCCaptionButton

要求

标头: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。

另请参阅

层次结构图

CPaneFrameWnd 类
CDockablePane 类