Класс CMFCCaptionBar
Объект CMFCCaptionBar представляет панель элементов управления, может отображать 3 элемента: кнопка, метка текстовой подписи и растровое изображение. Он может содержать только один элемент каждого типа одновременно. Можно выравнивание каждый элемент в левого или правого краев элементов управления или к центру. Также можно применить плоский или трехмерный стиль к верхним и нижним границам заголовка окна.
class CMFCCaptionBar : public CPane
Члены
Открытые методы
Имя |
Описание |
---|---|
Создается элемент управления " заголовок окна " и вложение его в объект CMFCCaptionBar. |
|
Указывает, является ли другой области можно динамически вставить между заголовком окна и его родительским кадром. Переопределения ( CBasePane::DoesAllowDynInsertBefore). |
|
Включает или отключит кнопки в заголовке окна. |
|
Возвращает выравнивание указанного элемента. |
|
Возвращает размер границы заголовка окна. |
|
Возвращает ограничивающий прямоугольник кнопки в заголовке окна. |
|
Возвращает расстояние между краем элемента управления и краем заголовка окна заголовка окна. |
|
Определяет, является ли заголовок окна в режиме панели сообщений. |
|
Удаляет образ растрового изображения из заголовка окна. |
|
Удаляет из кнопки заголовка окна. |
|
Удаляет Значок из заголовка окна. |
|
Удаляет текстовая подпись из заголовка окна. |
|
Задает изображение растрового изображения для заголовка окна. |
|
Задает размер границы заголовка окна. |
|
Задает кнопку для заголовка окна. |
|
Определяет, находится ли кнопка отображаемая нажатой. |
|
Задает подсказку для кнопки. |
|
Задает стиль границ заголовка окна. |
|
Задает Значок для заголовка окна. |
|
Задает подсказку для образа для заголовка окна. |
|
Устанавливает расстояние между краем элемента управления и краем заголовка окна заголовка окна. |
|
Задает текстовой подписи для заголовка окна. |
Защищенные методы
Имя |
Описание |
---|---|
Вызывается средой выполнения для заполнения фона заголовка окна. |
|
Вызывается средой выполнения для рисования границы заголовка окна. |
|
Вызывается средой выполнения для создания кнопки заголовка окна. |
|
Вызывается средой выполнения для создания образа заголовка окна. |
|
Вызывается средой выполнения для отрисовки текста заголовка окна. |
Элементы данных
Имя |
Описание |
---|---|
Цвет фона заголовка окна. |
|
Цвет границы заголовка окна. |
|
Цвет текста заголовка окна. |
Заметки
Чтобы создать заголовок окна, выполните следующие действия.
Создайте объект CMFCCaptionBar. Как правило, необходимо добавить заголовок окна в классе фреймового окна.
Вызовите метод CMFCCaptionBar::Create, чтобы создать элемент управления " заголовок окна " и вложить его в объект CMFCCaptionBar.
Вызовите CMFCCaptionBar::SetButton, CMFCCaptionBar::SetText, CMFCCaptionBar::SetIcon и CMFCCaptionBar::SetBitmap для размещения элементов заголовка окна.
При задании элементе кнопки, необходимо присвоить идентификатор команды к кнопке. Когда пользователь нажимает кнопку, заголовок окна направляет сообщения WM_COMMAND с этим идентификатором фреймовому к родительскому окну.
Заголовок окна также может работать в режиме панели сообщений, эмулирующем запуск панель сообщений, которая отображается в Microsoft Office 2007 приложений. В режиме панели сообщений, заголовок окна показаны растровое изображение, сообщение и кнопку (которая обычно открывает диалоговое окно). Можно присвоить подсказывает растрового изображения.
Чтобы включить режим панели сообщений, вызовите CMFCCaptionBar::Create и задайте четвертый параметр (bIsMessageBarMode) значение TRUE.
Пример
В следующем примере показано, как использовать различные методы класса CMFCCaptionBar. Пример показывает, как создать элемент управления заголовка окна, задайте трехмерную границу заголовка окна, задайте расстояние (в пикселях) между краем элемента управления и краем заголовка окна заголовка окна, набора кнопка для заголовка окна, задайте подсказки для кнопки, задайте текстовой подписи для заголовка окна, задайте образ растрового изображения для заголовка окна и укажите подсказку для образа в заголовке окна. Этот фрагмент кода часть Пример demo MS Office 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