Класс CMFCStatusBar
Класс CMFCStatusBar реализует строку состояния, аналогичные классу CStatusBar.Однако класс CMFCStatusBar имеет функции не предлагаемые классом CStatusBar, такие как возможность отображения образам, анимации и индикаторам выполнения; и возможность ответить на дважды щелкает мышью.
class CMFCStatusBar : public CPane
Члены
Открытые методы
Имя |
Описание |
---|---|
(Переопределяет CBasePane::CalcFixedLayout). |
|
|
|
Создает вложение панель элементов управления и его к объекту CPane.(Переопределяет CPane::Create). |
|
Создает вложение панель элементов управления и его к объекту CPane.(Переопределяет CPane::CreateEx). |
|
Определяет, является ли другую панель можно динамически вставить между этой панелью и родительским кадром.(Переопределяет CBasePane::DoesAllowDynInsertBefore). |
|
Включение или отключение обработка событий мыши дважды щелкает в строке состояния. |
|
Отображает индикатор выполнения в определенной области. |
|
Возвращает количество областей в строке состояния. |
|
|
|
|
|
|
|
|
|
|
|
|
|
Возвращает стиль панели.(Переопределяет CBasePane::GetPaneStyle). |
|
|
|
Возвращает ширину в пикселях, указанную панели строки состояния. |
|
Возвращает текст подсказки для указанной панели строки состояния. |
|
Делает недействительной указанную область и перерисовывает его содержимое. |
|
Вызывается инфраструктурой перед созданием окна Windows вложенного к данному объекту CWnd.(Переопределяет CWnd::PreCreateWindow). |
|
|
|
|
|
Присвоит анимации к заданной области. |
|
Устанавливает цвет фона для указанной панели строки состояния. |
|
Задает значок индикатора для указанной панели строки состояния. |
|
|
|
Задает текущий ход выполнения "Индикатор выполнения" для указанной панели строки состояния. |
|
Задает стиль панели.(Переопределяет CBasePane::SetPaneStyle). |
|
|
|
Задает цвет текста для указанной панели строки состояния. |
|
Задает ширину в пикселях, указанную панели строки состояния. |
|
Задает текст всплывающей подсказки для указанной панели строки состояния. |
Защищенные методы
Имя |
Описание |
---|---|
Вызываемый платформой, когда она перерисовывает панели строки состояния. |
Заметки
На следующей диаграмме показана диаграмма строки состояния из приложения Пример demo строки состояния.
Пример
В следующем примере демонстрируется локальные переменные, которые приложение использует для вызова различными методами класса CMFCStatusBar.Эти переменные указываются в StatusBarDemoView.h.Большая фрейма объявлена в документ, MainFrm.h объявлен в StatusBarDemoDoc.h и представление объявлено в StatusBarDemoView.h.Этот фрагмент кода является частью Пример demo строки состояния.
int m_nProgressCurr;
BOOL m_bInProgress;
CImageList m_imlStatusAnimation;
BOOL m_bInAnimation;
CBitmap m_bmpIcon1;
CBitmap m_bmpIcon2;
В следующем примере показано, как получить ссылку на объект CMFCStatusBar путем вставки в метод GetStatusBar MainFrm.h а затем вызвать этот метод из метода GetStatusBar в StatusBarDemoView.h.Этот фрагмент кода является частью Пример demo строки состояния.
// in MainFrm.h
public:
CMFCStatusBar& GetStatusBar ()
{
return m_wndStatusBar;
}
...
// in StatusBarDemoView.h
CMFCStatusBar& GetStatusBar () const
{
return ((CMainFrame*) AfxGetMainWnd ())->GetStatusBar ();
}
В следующем примере показано, как вызывать различные методы в классе CMFCStatusBar в StatusBarDemoView.cpp.Константы указываются в MainFrm.h.Примере показано, как задать значок, установите текст подсказки панели строки состояния, отображает индикатор выполнения в определенной области присвоит анимации к заданной области, установите текста и ширины панели строки состояния и укажите текущий индикатор выполнения "Индикатор выполнения" для панели строки состояния.Этот фрагмент кода является частью Пример demo строки состояния.
// in MainFrm.h
const int nStatusIcon = 0;
const int nStatusInfo = 1;
const int nStatusProgress = 2;
const int nStatusLabel = 3;
const int nStatusAnimation = 4;
...
// in StatusBarDemoView.cpp
GetStatusBar ().SetPaneIcon (nStatusIcon, m_bmpIcon1);
GetStatusBar ().SetTipText (nStatusIcon, _T("This is a tooltip"));
...
GetStatusBar ().EnablePaneProgressBar (nStatusProgress, PROGRESS_MAX);
...
GetStatusBar ().SetPaneAnimation (nStatusAnimation, NULL);
...
GetStatusBar ().SetPaneAnimation (nStatusAnimation, m_imlStatusAnimation);
GetStatusBar ().SetPaneText (nStatusAnimation, _T(""));
GetStatusBar ().SetPaneWidth (nStatusAnimation, 16);
...
GetStatusBar ().SetPaneProgress (nStatusProgress, m_nProgressCurr);
Иерархия наследования
Требования
заголовок: afxstatusbar.h