CMFCCaptionBar选件类
CMFCCaptionBar 对象是可显示三个元素的控制条:按钮、文本标签和位图。它可以一次只显示每个类型的组件。您可以对齐每个元素到控件的左边缘或右边缘或为中心。还可将简单列表或三维样式应用于标题栏的顶部和底部边界。
class CMFCCaptionBar : public CPane
成员
公共方法
名称 |
描述 |
---|---|
创建标题栏控件并将它附加到 CMFCCaptionBar对象。 |
|
指示另一个窗格是否可以动态插入标题栏上与其父框架。(重写 CBasePane::DoesAllowDynInsertBefore。) |
|
启用或禁用标题栏上的按钮。 |
|
返回指定元素的对齐方式。 |
|
返回标题栏的边框大小。 |
|
检索按钮的边框标题栏上的。 |
|
返回标题栏元素的边缘和标题栏控件的边缘之间的距离。 |
|
指定标题栏是否在消息条模式。 |
|
从标题栏移除位图图像。 |
|
从标题栏移除按钮。 |
|
从标题栏移除图标。 |
|
从标题栏移除文本标签。 |
|
设置标题栏的位图图像。 |
|
设置标题栏的边框大小。 |
|
设置标题栏中的按钮。 |
|
指定按钮仍是否按下了。 |
|
设置按钮的工具提示。 |
|
设置标题栏的边框样式。 |
|
设置标题栏的图标。 |
|
设置图像的工具提示标题栏的。 |
|
设置标题栏元素的边缘和标题栏控件的边缘之间的距离。 |
|
设置标题栏的文本标签。 |
受保护的方法
名称 |
描述 |
---|---|
调用 framework 加载标题栏的背景。 |
|
调用由结构分区标题栏的边框。 |
|
调用由框架绘制标题栏按钮。 |
|
调用由框架绘制标题栏图像。 |
|
调用由框架绘制标题栏文本。 |
数据成员
名称 |
描述 |
---|---|
标题栏的背景色。 |
|
标题栏的边框的颜色。 |
|
标题栏文本的颜色。 |
备注
若要创建标题栏,请执行以下步骤:
构造 CMFCCaptionBar 对象。通常,您需要添加标题栏到框架窗口选件类。
调用 CMFCCaptionBar::Create 方法创建标题栏控件并将其附加到 CMFCCaptionBar 对象。
调用 CMFCCaptionBar::SetButton、CMFCCaptionBar::SetText、CMFCCaptionBar::SetIcon和 CMFCCaptionBar::SetBitmap 设置标题栏元素。
将按钮元素时,必须将命令 ID。按钮。当用户单击按钮时,标题栏路由具有此 ID 到父框架窗口的 WM_COMMAND 消息。
标题栏在消息条模式下也可能适用,模拟消息条出现在 Microsoft Office 2007 应用程序。在条消息模式下,标题栏显示位图、消息(通常会打开对话框的按钮)。可以将工具提示到位图。
若要启动消息条模式,请调用 CMFCCaptionBar::Create 并将第四个参数 (bIsMessageBarMode) 到 TRUE。
示例
下面的示例在 CMFCCaptionBar 选件类演示如何使用各种方法。此示例演示如何创建标题栏控件,设置标题栏的三维边框,设置距离,以像素为单位,在标题栏元素的边缘和标题栏控件的边缘之间,设置标题栏的按钮,将按钮的工具提示,设置标题栏的文本标签,设置标题栏的位图图像,并设置图像的工具提示在标题栏。此代码段是 MS 办公室 2007 中演示的示例的一部分。
CMFCCaptionBar m_wndMessageBar;
...
BOOL CMainFrame::CreateMessageBar()
{
// The this pointer points to a CMainFrame class which extends the CFrameWndEx class.
if (!m_wndMessageBar.Create(WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS, this, ID_VIEW_MESSAGEBAR, -1, TRUE))
{
TRACE0("Failed to create caption bar\n");
return FALSE;
}
m_wndMessageBar.SetFlatBorder( FALSE );
m_wndMessageBar.SetMargin(10);
m_wndMessageBar.SetButton(_T("Options..."), ID_TOOLS_OPTIONS, CMFCCaptionBar::ALIGN_LEFT, FALSE);
m_wndMessageBar.SetButtonToolTip(_T("Click here to see more options"));
m_wndMessageBar.SetText(_T("Welcome to the MFC MSOffice2007 demonstration!"), CMFCCaptionBar::ALIGN_LEFT);
m_wndMessageBar.SetBitmap(IDB_INFO, RGB(255, 255, 255), FALSE, CMFCCaptionBar::ALIGN_LEFT);
m_wndMessageBar.SetImageToolTip(_T("Important"), _T("Please take a look at MSOffice2007Demo source code to learn how to create advanced user interface in minutes."));
return TRUE;
}
继承层次结构
要求
标头: afxcaptionbar.h