Поделиться через


Класс CMDIChildWndEx

Класс CMDIChildWndEx предоставляет функциональные возможности дочернего окна интерфейса windows с несколькими документами (MDI). Он расширяет функциональные возможности класса CMDIChildWnd. Платформа требует этот класс, если приложение MDI использует определенные классы MFC.

Дополнительные сведения см. в исходном коде, расположенном в папке VC\atlmfc\src\mfc установки Visual Studio.

Синтаксис

class CMDIChildWndEx : public CMDIChildWnd

Участники

Открытые методы

Имя Описание
CMDIChildWndEx::ActivateTopLevelFrame Вызывается внутренне платформой для активации кадра верхнего уровня, когда приложение должно быть активировано на вкладке панели задач.
CMDIChildWndEx::AddDockSite Этот метод не используется или не реализуется.
CMDIChildWndEx::AddPane Добавляет панель.
CMDIChildWndEx::AddTabbedPane Добавляет панель табуляции.
CMDIChildWndEx::AdjustDockingLayout Настраивает макет док-станции.
CMDIChildWndEx::CanShowOnMDITabs
CMDIChildWndEx::CanShowOnTaskBarTabs Сообщает платформе, можно ли отображать этот дочерний элемент MDI на вкладках панели задач Windows 7.
CMDIChildWndEx::CanShowOnWindowsList Возвращает значение TRUE, если имя дочернего окна MDI можно отобразить в диалоговом окне класса CMFCWindowsManagerDialog. В противном случае возвращает значение FALSE.
CMDIChildWndEx::CreateObject Вызывается платформой для создания динамического экземпляра этого типа класса.
CMDIChildWndEx::D ockPane Закрепление области.
CMDIChildWndEx::D ockPaneLeftOf Закрепляет одну область слева от другой области.
CMDIChildWndEx::EnableAutoHidePanes Включает режим автоматического скрытия панелей при закреплении на указанных сторонах окна.
CMDIChildWndEx::EnableDocking Включает закрепление дочернего окна к главному кадру.
CMDIChildWndEx::EnableTaskbarThumbnailClipRect Включает или отключает автоматическое выделение части клиентской области окна, отображаемой в виде эскиза этого окна на панели задач.
CMDIChildWndEx::GetDockingManager
CMDIChildWndEx::GetDocumentName Возвращает имя документа, отображаемого в дочернем окне MDI.
CMDIChildWndEx::GetFrameIcon Вызывается платформой для получения значка дочернего окна MDI.
CMDIChildWndEx::GetFrameText Вызывается платформой для получения текста дочернего окна MDI.
CMDIChildWndEx::GetPane Находит область по указанному идентификатору элемента управления.
CMDIChildWndEx::GetRelatedTabGroup
CMDIChildWndEx::GetTabbedPane Возвращает указатель на внедренную панель док-станции, преобразованную в документ с вкладками.
CMDIChildWndEx::GetTabProxyWnd Возвращает окно прокси-сервера табуляции, зарегистрированное на вкладках панели задач Windows 7.
CMDIChildWndEx::GetTaskbarPreviewWnd Вызывается платформой, когда требуется получить дочернее окно (обычно окно представления или разделения), которое будет отображаться на вкладке панели задач Windows 7.
CMDIChildWndEx::GetTaskbarThumbnailClipRect Вызывается платформой, когда она должна выбрать часть клиентской области окна, чтобы отобразить эскиз этого окна на панели задач.
CMDIChildWndEx::GetThisClass Вызывается платформой для получения указателя на объект CRuntimeClass , связанный с этим типом класса.
CMDIChildWndEx::GetToolbarButtonToolTipText Вызывается платформой для получения подсказки для кнопки панели инструментов.
CMDIChildWndEx::InsertPane Регистрирует указанную область в диспетчере закреплений.
CMDIChildWndEx::InvalidateIconicBitmaps Отменяет представление символьного растрового изображения дочернего MDI.
CMDIChildWndEx::IsPointNearDockSite Определяет, находится ли указанная точка рядом с сайтом док-станции.
CMDIChildWndEx::IsReadOnly Возвращает значение TRUE, если документ, отображаемый в дочернем окне, доступен только для чтения. В противном случае возвращает значение FALSE.
CMDIChildWndEx::IsRegisteredWithTaskbarTabs Возвращает значение TRUE, если дочерний элемент MDI успешно зарегистрирован на вкладках панели задач Windows 7.
CMDIChildWndEx::IsTabbedPane Возвращает значение TRUE, если дочернее окно MDI содержит область док-станции. В противном случае возвращает значение FALSE.
CMDIChildWndEx::IsTaskbarTabsSupportEnabled Указывает, может ли дочерний элемент MDI отображаться на вкладках панели задач Windows 7.
CMDIChildWndEx::IsTaskbarThumbnailClipRectEnabled Указывает, включена или отключена ли автоматическая выбор части клиентской области окна, отображаемой в виде эскиза этого окна на панели задач.
CMDIChildWndEx::m_dwDefaultTaskbarTabPropertyFlags Сочетание флагов, передаваемых платформой в метод SetTaskbarTabProperties, когда вкладка (дочерний элемент MDI) регистрируется на вкладках панели задач Windows 7. Сочетание по умолчанию — STPF_USEAPPTHUMBNAILWHENACTIVE | STPF_USEAPPPEEKWHENACTIVE.
CMDIChildWndEx::OnGetIconicLivePreviewBitmap Вызывается платформой, когда требуется получить растровое изображение для динамической предварительной версии дочернего элемента MDI.
CMDIChildWndEx::OnGetIconicThumbnail Вызывается платформой, когда требуется получить растровое изображение для знаковых эскизов дочернего элемента MDI.
CMDIChildWndEx::OnMoveMiniFrame Вызывается платформой для перемещения окна мини-кадра.
CMDIChildWndEx::OnPressTaskbarThmbnailCloseButton Вызывается платформой, когда пользователь нажимает кнопку закрытия на вкладке "Панель задач".
CMDIChildWndEx::OnSetPreviewMode Вызывается платформой для ввода или выхода из режима предварительного просмотра печати.
CMDIChildWndEx::OnTaskbarTabThumbnailActivate Вызывается платформой, когда эскиз вкладки "Панель задач" должен обрабатывать WM_ACTIVATE сообщения.
CMDIChildWndEx::OnTaskbarTabThumbnailMouseActivate Вызывается платформой, когда эскиз вкладки "Панель задач" должен обрабатывать WM_MOUSEACTIVATE сообщения.
CMDIChildWndEx::OnTaskbarTabThumbnailStretch Вызывается платформой, когда необходимо растянуть растровое изображение для эскиза вкладки панели задач Windows 7 для дочернего элемента MDI.
CMDIChildWndEx::OnUpdateFrameTitle Вызывается платформой для обновления заголовка кадра. (Переопределяет CMDIChildWnd::OnUpdateFrameTitle.)
CMDIChildWndEx::P aneFromPoint Возвращает область, содержащую заданную точку.
CMDIChildWndEx::PreTranslateMessage Используется классом CWinApp для преобразования сообщений окна перед их передачей функциям Windows TranslateMessage и DispatchMessage . (Переопределяет CWnd::PreTranslateMessage.)
CMDIChildWndEx::RecalcLayout Пересчитывает макет окна.
CMDIChildWndEx::RegisterTaskbarTab Регистрирует дочерний элемент MDI на вкладках панели задач Windows 7.
CMDIChildWndEx::RemovePaneFromDockManager Удаляет панель из диспетчера док-станции.
CMDIChildWndEx::SetRelatedTabGroup
CMDIChildWndEx::SetTaskbarTabActive Активирует соответствующую вкладку панели задач Windows 7.
CMDIChildWndEx::SetTaskbarTabOrder Вставка дочернего элемента MDI перед указанным окном на вкладках панели задач Windows 7.
CMDIChildWndEx::SetTaskbarTabProperties Задает свойства для вкладки панели задач Windows 7.
CMDIChildWndEx::SetTaskbarThumbnailClipRect Вызывается внутренне платформой, чтобы задать прямоугольник для вырезки, чтобы выбрать часть клиентской области окна для отображения в виде эскиза этого окна на панели задач.
CMDIChildWndEx::ShowPane
CMDIChildWndEx::UnregisterTaskbarTab Удаляет дочерний элемент MDI на вкладках панели задач Windows 7.
CMDIChildWndEx::UpdateTaskbarTabIcon значок вкладки панели задач Обновления Windows 7.

Замечания

Чтобы воспользоваться преимуществами расширенных функций док-станции в приложениях MDI, наследуйте класс дочернего окна MDI приложения CMDIChildWndEx вместо CMDIChildWnd.

Пример

Следующий пример является производным от CMDIChildWndExкласса. Этот фрагмент кода поставляется из примера VisualStudioDemo: приложение MFC Visual Studio.

class CChildFrame : public CMDIChildWndEx
{
   DECLARE_DYNCREATE(CChildFrame)
public:
   CChildFrame();

   // Overrides
public:
   virtual BOOL PreCreateWindow(CREATESTRUCT &cs);
   virtual void ActivateFrame(int nCmdShow = -1);

   virtual BOOL IsReadOnly();
   virtual LPCTSTR GetDocumentName(CObject **pObj);

   // Implementation
public:
   virtual ~CChildFrame();
#ifdef _DEBUG
   virtual void AssertValid() const;
   virtual void Dump(CDumpContext &dc) const;
#endif

protected:
   afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);

   DECLARE_MESSAGE_MAP()
};

Иерархия наследования

CObject

CCmdTarget

CWnd

CFrameWnd

Cmdichildwnd

CMDIChildWndWndEx

Requirements

Заголовок: afxMDIChildWndWndEx.h

CMDIChildWndEx::AddPane

Добавляет панель.

BOOL AddPane(
    CBasePane* pControlBar,
    BOOL bTail = TRUE);

Параметры

pControlBar
[in] Указатель на область.

bTail
[in] True, чтобы добавить панель в конец списка панелей для диспетчера закреплений; в противном случае — ЗНАЧЕНИЕ FALSE.

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если область успешно зарегистрирована в диспетчере закреплений; в противном случае — ЗНАЧЕНИЕ FALSE.

CMDIChildWndEx::AddTabbedPane

Добавляет панель табуляции.

void AddTabbedPane(CDockablePane* pControlBar);

Параметры

pControlBar
[in] Указатель на область.

CMDIChildWndEx::AdjustDockingLayout

Настраивает макет док-станции.

virtual void AdjustDockingLayout(HDWP hdwp = NULL);

Параметры

hdwp
[in] Обработка структуры отложенного положения окна.

CMDIChildWndEx::CanShowOnMDITabs

virtual BOOL CanShowOnMDITabs();

Возвращаемое значение

Замечания

CMDIChildWndEx::CanShowOnWindowsList

Указывает, можно ли отображать имя дочернего окна MDI в диалоговом окне класса CMFCWindowsManagerDialog.

virtual BOOL CanShowOnWindowsList();

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если окно может отображаться в диалоговом окне Windows ; в противном случае — ЗНАЧЕНИЕ FALSE.

Замечания

Переопределите этот метод в производном классе и возвращает значение FALSE, если окно не должно отображаться в диалоговом окне Windows . Эта функция вызывается из CMFCWindowsManagerDialog.

CMDIChildWndEx::D ockPane

Закрепление области.

void DockPane(
    CBasePane* pBar,
    UINT nDockBarID = 0,
    LPCRECT lpRect = NULL);

Параметры

pBar
[in] Указатель на область.

nDockBarID
[in] Идентификатор области.

lpRect
[in] Указатель на прямоугольник.

Замечания

Параметр lpRect не используется.

CMDIChildWndEx::D ockPaneLeftOf

Закрепляет одну область слева от другой области.

BOOL DockPaneLeftOf(
    CPane* pBar,
    CPane* pLeftOf);

Параметры

pBar
Указатель на область, которая должна быть закреплена.

pLeftOf
Указатель на область, которая служит точкой ссылки.

Возвращаемое значение

TRUE при успешном выполнении, FALSE при сбое.

Замечания

Этот метод принимает область, указанную pBar , и закрепляет ее в левой части области, указанной pLeftOf.

Вызовите этот метод, если требуется закрепить несколько панелей в предопределенном порядке.

CMDIChildWndEx::EnableAutoHidePanes

Включает режим автоматического скрытия панелей при закреплении на указанных сторонах окна.

BOOL EnableAutoHidePanes(DWORD dwDockStyle);

Параметры

dwDockStyle
[in] Указывает стороны главного окна фрейма, которое включено. Используйте один или несколько следующих флагов.

  • CBRS_ALIGN_LEFT

  • CBRS_ALIGN_RIGHT

  • CBRS_ALIGN_TOP

  • CBRS_ALIGN_BOTTOM

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если метод успешно выполнен; в противном случае ЗНАЧЕНИЕ FALSE.

CMDIChildWndEx::EnableDocking

Включает закрепление дочернего окна к главному кадру.

BOOL EnableDocking(DWORD dwDockStyle);

Параметры

dwDockStyle
[in] Указывает выравнивание док-станции для включения.

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если метод успешно выполнен; в противном случае ЗНАЧЕНИЕ FALSE.

Замечания

Вызовите этот метод, чтобы включить выравнивание прикрепления к главному кадру. Вы можете передать сочетание флагов CBRS_ALIGN_ (дополнительные сведения см. в разделе CControlBar::EnableDocking).

CMDIChildWndEx::GetDockingManager

CDockingManager* GetDockingManager();

Возвращаемое значение

Замечания

CMDIChildWndEx::GetDocumentName

Возвращает имя документа, отображаемого в дочернем окне MDI.

virtual LPCTSTR GetDocumentName(CObject** pObj);

Возвращаемое значение

Указатель на строку, содержащую имя документа.

Замечания

Документ — это то, что отображает дочернее окно MDI. Как правило, в окне отображаются данные, загруженные или сохраненные в файл. Таким образом, имя документа — это имя файла. Реализация по умолчанию возвращает строку, полученную GetDocumentName из CDocument::GetPathName.

Если в окне отображается документ, который не загружен из файла, переопределите этот метод в производном классе и верните уникальный идентификатор документа.

GetDocumentName вызывается платформой при сохранении состояния всех открытых документов. Возвращаемая строка записывается в реестр.

Когда платформа восстанавливает состояние позже, имя документа считывается из реестра и передается в CMDIFrameWndEx::CreateDocumentWindow. Переопределите этот метод в классе, производном от CMDIFrameWndEx, и создайте или откройте документ с таким именем и считывает его в файле с таким именем. Если документ не основан на файле, создайте документ на основе самого идентификатора документа. Предыдущие действия следует выполнять только в том случае, если планируется сохранить и восстановить документы.

Пример

В следующем примере иллюстрируется использование метода GetDocumentName. Этот фрагмент кода поставляется из примера VisualStudioDemo: приложение MFC Visual Studio.

LPCTSTR CChildFrame::GetDocumentName(CObject **pObj)
{
   if (DYNAMIC_DOWNCAST(CStartView, GetActiveView()) != NULL)
   {
      return g_strStartViewName;
   }
   return CMDIChildWndEx::GetDocumentName(pObj);
}

CMDIChildWndEx::GetFrameIcon

Вызывается платформой для получения значка дочернего окна MDI.

virtual HICON GetFrameIcon() const;

Возвращаемое значение

Дескриптор значка окна.

Замечания

Этот метод вызывается платформой для определения значка, отображаемого на вкладке MDI, содержащей окно дочернего фрейма MDI.

По умолчанию этот метод возвращает значок окна. Переопределяется GetFrameIcon в производном CMDIChildWndExклассе, чтобы настроить это поведение.

CMDIChildWndEx::GetFrameText

Вызывается платформой для получения текста дочернего окна MDI.

virtual CString GetFrameText() const;

Возвращаемое значение

Строка, содержащая текст окна кадра.

Замечания

Этот метод вызывается платформой, чтобы определить, какой текст будет отображаться на вкладке MDI, содержащей окно дочернего фрейма MDI.

По умолчанию этот метод возвращает текст окна. Переопределяется GetFrameText в производном CMDIChildWndExклассе, чтобы настроить это поведение.

CMDIChildWndEx::GetPane

Находит область по указанному идентификатору элемента управления.

CBasePane* GetPane(UINT nID);

Параметры

Nid
[in] Идентификатор элемента управления области для поиска.

Возвращаемое значение

Указатель на область при обнаружении, в противном случае — ЗНАЧЕНИЕ NULL.

CMDIChildWndEx::GetRelatedTabGroup

CMFCTabCtrl* GetRelatedTabGroup();

Возвращаемое значение

Замечания

CMDIChildWndEx::GetTabbedPane

Возвращает указатель на панель закрепления, которая входит в группу документов с вкладками MDI.

CDockablePane* GetTabbedPane() const;

Возвращаемое значение

Указатель на панель закрепления, которая входит в группу документов с вкладками MDI.

CMDIChildWndEx::GetToolbarButtonToolTipText

Вызывается платформой для получения подсказки для кнопки панели инструментов.

virtual BOOL GetToolbarButtonToolTipText(
    CMFCToolBarButton*,
    CString&);

Возвращаемое значение

Значение TRUE, если подсказка отображается. Реализация по умолчанию возвращает FALSE.

Замечания

Переопределите этот метод, если вы хотите отобразить пользовательские подсказки инструментов для кнопок панели инструментов.

CMDIChildWndEx::InsertPane

Регистрирует указанную область в диспетчере закреплений.

BOOL InsertPane(
    CBasePane* pControlBar,
    CBasePane* pTarget,
    BOOL bAfter = TRUE);

Параметры

pControlBar
[in] Указатель на область для вставки.

pTarget
[in] Указатель на смежную область.

bAfter
[in] Если значение TRUE, pControlBar вставляется после pTarget. Если значение FALSE, pControlBar вставляется перед pTarget.

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если метод успешно выполнен, значение FALSE в противном случае.

CMDIChildWndEx::IsPointNearDockSite

Определяет, находится ли указанная точка рядом с сайтом док-станции.

BOOL IsPointNearDockSite(
    CPoint point,
    DWORD& dwBarAlignment,
    BOOL& bOuterEdge) const;

Параметры

point
[in] Указанная точка.

dwBarAlignment
[in] Указывает, какой край находится рядом. Возможные значения: CBRS_ALIGN_LEFT, CBRS_ALIGN_RIGHT, CBRS_ALIGN_TOP и CBRS_ALIGN_BOTTOM

bOuterEdge
[in] ЗНАЧЕНИЕ TRUE, если точка находится вблизи внешней границы док-сайта; Значение FALSE в противном случае.

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если точка находится рядом с сайтом док-станции; в противном случае ЗНАЧЕНИЕ FALSE.

Замечания

Точка находится рядом с сайтом док-станции, когда он находится в пределах конфиденциальности, заданной в диспетчере закреплений. Чувствительность по умолчанию составляет 15 пикселей.

CMDIChildWndEx::IsReadOnly

Указывает, доступен ли документ, отображаемый в дочернем окне, только для чтения.

virtual BOOL IsReadOnly();

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если документ доступен только для чтения; в противном случае ЗНАЧЕНИЕ FALSE.

Замечания

Эта функция используется для предотвращения сохранения документов только для чтения.

Пример

В следующем примере показано переопределение IsReadOnly метода. Этот фрагмент кода поставляется из примера VisualStudioDemo: приложение MFC Visual Studio.

BOOL CChildFrame::IsReadOnly()
{
   return DYNAMIC_DOWNCAST(CStartView, GetActiveView()) != NULL;
}

CMDIChildWndEx::IsTabbedPane

Указывает, содержит ли дочернее окно MDI область док-станции.

BOOL IsTabbedPane() const;

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если дочернее окно MDI содержит панель док-станции, преобразованную в документ с вкладками; в противном случае ЗНАЧЕНИЕ FALSE.

CMDIChildWndEx::OnMoveMiniFrame

Вызывается платформой для перемещения окна мини-кадра.

virtual BOOL OnMoveMiniFrame(CWnd* pFrame);

Параметры

pFrame
[in] Указатель на окно мини-кадра.

Возвращаемое значение

Значение TRUE, если метод успешно выполнен, в противном случае — ЗНАЧЕНИЕ FALSE.

CMDIChildWndEx::OnSetPreviewMode

Вызывается платформой для ввода или выхода из режима предварительного просмотра печати.

virtual void OnSetPreviewMode(
    BOOL bPreview,
    CPrintPreviewState* pState);

Параметры

bPreview
[in] Если значение TRUE, введите режим предварительного просмотра печати. Если значение FALSE, закройте режим предварительного просмотра печати.

pState
[in] Указатель на структуру состояния предварительного просмотра печати.

CMDIChildWndEx::OnUpdateFrameTitle

Вызывается платформой для обновления заголовка кадра.

virtual void OnUpdateFrameTitle(BOOL bAddToTitle);

Параметры

bAddToTitle
[in] Если значение TRUE, добавьте имя документа в заголовок.

CMDIChildWndEx::P aneFromPoint

Возвращает область, содержащую заданную точку.

CBasePane* PaneFromPoint(
    CPoint point,
    int nSensitivity,
    bool bExactBar,
    CRuntimeClass* pRTCBarType) const;

CBasePane* PaneFromPoint(
    CPoint point,
    int nSensitivity,
    DWORD& dwAlignment,
    CRuntimeClass* pRTCBarType) const;

Параметры

point
[in] Указывает точку в координатах экрана для проверка.

nSensitivity
[in] Увеличьте область поиска на эту сумму. Панель удовлетворяет критериям поиска, если указанная точка попадает в увеличенную область.

bExactBar
[in] Значение TRUE, чтобы игнорировать параметр nSensitivity ; в противном случае — ЗНАЧЕНИЕ FALSE.

pRTCBarType
[in] Если значение NULL не равно NULL, метод выполняет поиск только в области указанного типа.

dwAlignment
[in] Если область найдена в указанной точке, этот параметр содержит сторону панели, которая была ближе всего к указанной точке. Дополнительные сведения см. в разделе с примечаниями.

Возвращаемое значение

Указатель на производный CBasePaneобъект, содержащий указанную точку, или NULL, если панель не найдена.

Замечания

Вызовите этот метод, чтобы определить, содержит ли панель указанную точку в соответствии с указанными условиями, такими как класс среды выполнения и видимость.

При возврате функции и обнаружении области dwAlignment содержит выравнивание указанной точки. Например, если точка ближе всего к верхней части области, для dwAlignment задано значение CBRS_ALIGN_TOP.

CMDIChildWndEx::RecalcLayout

Пересчитывает макет окна.

virtual void RecalcLayout(BOOL bNotify = TRUE);

Параметры

bNotify
[in] Если значение TRUE, активный элемент на месте для окна получает уведомление об изменении макета.

CMDIChildWndEx::RemovePaneFromDockManager

Удаляет панель из диспетчера док-станции.

void RemovePaneFromDockManager(
    CBasePane* pControlBar,
    BOOL bDestroy,
    BOOL bAdjustLayout,
    BOOL bAutoHide,
    CBasePane* pBarReplacement);

Параметры

pControlBar
[in] Указатель на панель для удаления.

bDesk
[in] Если значение TRUE, удаленная панель будет уничтожена.

bAdjustLayout
[in] Если значение TRUE, измените макет док-станции немедленно.

bAutoHide
[in] Если значение TRUE, макет закрепления связан со списком полос автохидентов. Если значение FALSE, то макет закрепления связан со списком регулярных панелей.

pBarReplacement
[in] Указатель на панель, которая заменяет удаленную панель.

CMDIChildWndEx::SetRelatedTabGroup

void SetRelatedTabGroup(CMFCTabCtrl* p);

Параметры

[in] P

Замечания

CMDIChildWndEx::ShowPane

void ShowPane(
    CBasePane* pBar,
    BOOL bShow,
    BOOL bDelay,
    BOOL bActivate);

Параметры

[in] pBar

[in] bShow

[in] bDelay

[in] bActivate

Замечания

CMDIChildWndEx::UpdateTaskbarTabIcon

Обновления значок вкладки панели задач Windows 7.

virtual void UpdateTaskbarTabIcon(HICON hIcon);

Параметры

hIcon
Дескриптор значка, отображаемого на вкладке панели задач Windows 7.

Замечания

CMDIChildWndEx::UnregisterTaskbarTab

Удаляет дочерний элемент MDI на вкладках панели задач Windows 7.

void UnregisterTaskbarTab(BOOL bCheckRegisteredMDIChildCount = TRUE);

Параметры

bCheckRegisteredMDIChildCount
Указывает, должна ли эта функция проверка количество дочерних элементов MDI, зарегистрированных на вкладках MDI. Если это число равно 0, эта функция удаляет прямоугольник с вырезки из эскиза панели задач приложения.

Замечания

CMDIChildWndEx::SetTaskbarThumbnailClipRect

Вызывается платформой, чтобы задать прямоугольник для вырезки, чтобы выбрать часть клиентской области окна для отображения в виде эскиза этого окна на панели задач.

virtual BOOL SetTaskbarThumbnailClipRect(CRect rect);

Параметры

rect
Задает новый прямоугольник для вырезки. Если прямоугольник пуст или null, вырезка удаляется.

Возвращаемое значение

Значение TRUE, если успешно; в противном случае — FALSE.

Замечания

CMDIChildWndEx::SetTaskbarTabProperties

Задает свойства для вкладки панели задач Windows 7.

void SetTaskbarTabProperties(DWORD dwFlags);

Параметры

dwFlags
Сочетание значений STPFLAG. Дополнительные сведения см. в разделе ITaskbarList4::SetTabProperties.

Замечания

CMDIChildWndEx::SetTaskbarTabOrder

Вставляет дочерний элемент MDI перед указанным окном на вкладках панели задач Windows 7.

void SetTaskbarTabOrder(CMDIChildWndEx* pWndBefore = NULL);

Параметры

pWndBefore
Указатель на дочернее окно MDI, эскиз которого вставляется слева. Это окно уже должно быть зарегистрировано через RegisterTaskbarTab. Если это значение равно NULL, новый эскиз добавляется в конец списка.

Замечания

CMDIChildWndEx::SetTaskbarTabActive

Активирует соответствующую вкладку панели задач Windows 7.

void SetTaskbarTabActive();

Замечания

CMDIChildWndEx::RegisterTaskbarTab

Регистрирует дочерний элемент MDI на вкладках панели задач Windows 7.

virtual void RegisterTaskbarTab(CMDIChildWndEx* pWndBefore = NULL);

Параметры

pWndBefore
Указатель на дочернее окно MDI, эскиз которого вставляется слева. Это окно уже должно быть зарегистрировано через RegisterTaskbarTab. Если это значение равно NULL, новый эскиз добавляется в конец списка.

Замечания

CMDIChildWndEx::OnTaskbarTabThumbnailStretch

Вызывается платформой, когда необходимо растянуть растровое изображение для эскиза вкладки панели задач Windows 7 для дочернего элемента MDI.

virtual BOOL OnTaskbarTabThumbnailStretch(
    HBITMAP hBmpDst,
    const CRect& rectDst,
    HBITMAP hBmpSrc,
    const CRect& rectSrc);

Параметры

hBmpDst
Дескриптор целевого растрового изображения.

rectDst
Задает прямоугольник назначения.

hBmpSrc
Дескриптор исходного растрового изображения.

rectSrc
Указывает исходный прямоугольник.

Замечания

Требование: afxmdichildwndex.h

CMDIChildWndEx::OnTaskbarTabThumbnailMouseActivate

Вызывается платформой, когда эскиз вкладки "Панель задач" должен обрабатывать сообщение WM_MOUSEACTIVATE.

virtual int OnTaskbarTabThumbnailMouseActivate(
    CWnd* pDesktopWnd,
    UINT nHitTest,
    UINT message);

Параметры

pDesktopWnd
Указывает указатель на родительское окно верхнего уровня активированного окна. Указатель может быть временным и не должен храниться.

nHitTest
Указывает код области попадания. Тест попадания — это тест, определяющий расположение курсора.

message
Указывает номер сообщения мыши.

Замечания

Реализация по умолчанию активирует связанный дочерний кадр MDI.

CMDIChildWndEx::OnTaskbarTabThumbnailActivate

Вызывается платформой, когда эскиз вкладки "Панель задач" должен обрабатывать сообщение WM_ACTIVATE.

virtual void OnTaskbarTabThumbnailActivate(
    UINT nState,
    CWnd* pWndOther,
    BOOL bMinimized);

Параметры

nState
Указывает, активируется ли CWnd активируется или деактивируется.

pWndOther
Указатель на активацию CWnd или деактивацию. Указатель может иметь значение NULL и может быть временным.

bMinimized
Указывает свернутое состояние активации CWnd или деактивации. Значение TRUE указывает, что окно свернуто.

Замечания

Реализация по умолчанию активирует связанный дочерний кадр MDI.

CMDIChildWndEx::OnPressTaskbarThmbnailCloseButton

Вызывается платформой, когда пользователь нажимает кнопку закрытия на эскизе вкладки панели задач.

virtual void OnPressTaskbarThmbnailCloseButton();

Замечания

CMDIChildWndEx::OnGetIconicThumbnail

Вызывается платформой, когда требуется получить растровое изображение для знаковых эскизов дочернего элемента MDI.

virtual HBITMAP OnGetIconicThumbnail(
    int nWidth,
    int nHeight);

Параметры

nWidth
Задает ширину требуемого растрового изображения.

nHeight
Указывает высоту требуемого растрового изображения.

Замечания

CMDIChildWndEx::OnGetIconicLivePreviewBitmap

Вызывается платформой, когда требуется получить растровое изображение для динамического предварительного просмотра дочернего элемента MDI.

virtual HBITMAP OnGetIconicLivePreviewBitmap(
    BOOL bIsMDIChildActive,
    CPoint& ptLocation);

Параметры

bIsMDIChildActive
Этот параметр имеет значение TRUE, если растровое изображение запрашивается для дочернего элемента MDI, которое в настоящее время активно, а главное окно не свернуто. Обработка по умолчанию в этом случае принимает моментальный снимок главного окна.

ptLocation
Указывает расположение растрового изображения в координатах клиента основного (верхнего уровня). Эта точка должна быть предоставлена вызывающим абонентом.

Возвращаемое значение

При обработке возвращает дескриптор допустимой растровой карты 32bpp, в противном случае — ЗНАЧЕНИЕ NULL.

Замечания

Переопределите этот метод в производном классе и возвращает допустимое растровое изображение 32bpp для динамического предварительного просмотра дочернего MDI. Этот метод вызывается только при отображении дочернего элемента MDI на вкладках панели задач Windows 7. Если вы возвращаете значение NULL, MFC вызывает обработчики по умолчанию и получает растровые изображения с помощью PrintClient или PrintWindow.

CMDIChildWndEx::m_dwDefaultTaskbarTabPropertyFlags

Сочетание флагов, передаваемых платформой SetTaskbarTabProperties в метод, когда вкладка (дочерний элемент MDI) регистрируется на вкладках панели задач Windows 7.

AFX_IMPORT_DATA static DWORD m_dwDefaultTaskbarTabPropertyFlags;

Замечания

Сочетание по умолчанию — STPF_USEAPPTHUMBNAILWHENACTIVE | STPF_USEAPPPEEKWHENACTIVE.

CMDIChildWndEx::IsTaskbarThumbnailClipRectEnabled

Указывает, включена или отключена ли автоматическая выбор части клиентской области окна, отображаемой в виде эскиза этого окна на панели задач.

BOOL IsTaskbarThumbnailClipRectEnabled() const;

Возвращаемое значение

Возвращает значение TRUE, если включена автоматическая выбор части клиентской области окна; в противном случае ЗНАЧЕНИЕ FALSE.

Замечания

CMDIChildWndEx::IsTaskbarTabsSupportEnabled

Указывает, может ли дочерний элемент MDI отображаться на вкладках панели задач Windows 7.

BOOL IsTaskbarTabsSupportEnabled();

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если дочерний элемент MDI может отображаться на вкладках панели задач Windows 7; ЗНАЧЕНИЕ FALSE, если дочерний элемент MDI не может отображаться на вкладках панели задач Windows 7.

Замечания

CMDIChildWndEx::IsRegisteredWithTaskbarTabs

Возвращает значение TRUE, если дочерний элемент MDI успешно зарегистрирован на вкладках панели задач Windows 7.

BOOL IsRegisteredWithTaskbarTabs();

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если дочерний элемент MDI зарегистрирован на вкладках панели задач Windows 7; в противном случае ЗНАЧЕНИЕ FALSE.

Замечания

CMDIChildWndEx::InvalidateIconicBitmaps

Недопустимое представление знакового растрового изображения дочернего элемента MDI.

BOOL InvalidateIconicBitmaps();

Возвращаемое значение

Возвращает ЗНАЧЕНИЕ FALSE, если поддержка панели задач Windows 7 отключена, или дочерний элемент MDI не зарегистрирован на вкладках панели задач Windows 7; в противном случае возвращает значение TRUE.

Замечания

Должен вызываться при изменении динамического содержимого или размера дочернего элемента MDI.

CMDIChildWndEx::GetTaskbarThumbnailClipRect

Вызывается платформой, когда она должна выбрать часть клиентской области окна, чтобы отобразить эскиз этого окна на панели задач.

virtual CRect GetTaskbarThumbnailClipRect() const;

Возвращаемое значение

Прямоугольник в координатах окон. Этот прямоугольник сопоставляется с клиентской областью кадра верхнего уровня. Прямоугольник должен быть пустым, чтобы очистить прямоугольник обрезки.

Замечания

CMDIChildWndEx::GetTaskbarPreviewWnd

Вызывается платформой, когда требуется получить дочернее окно (обычно окно представления или разделения), отображаемое на эскизе панели задач Windows 7.

virtual CWnd* GetTaskbarPreviewWnd();

Возвращаемое значение

Должен возвращать допустимый указатель на CWnd объект, предварительный просмотр которого должен отображаться на вкладке панели задач Windows 7, связанной с этим дочерним элементом MDI. Реализация по умолчанию возвращает дочернее окно этого дочернего элемента MDI с идентификатором элемента управления AFX_IDW_PANE_FIRST (который обычно является производным классом CView).

Замечания

CMDIChildWndEx::GetTabProxyWnd

Возвращает окно прокси-сервера вкладки, зарегистрированное на вкладках панели задач Windows 7.

CMDITabProxyWnd* GetTabProxyWnd();

Возвращаемое значение

Указатель на CMDITabProxyWnd объект, зарегистрированный на вкладках панели задач Windows 7.

Замечания

CMDIChildWndEx::EnableTaskbarThumbnailClipRect

Включает или отключает автоматическое выделение части клиентской области окна, отображаемой в виде эскиза этого окна на панели задач.

void EnableTaskbarThumbnailClipRect(BOOL bEnable = TRUE);

Параметры

bEnable
Указывает, следует ли включить (TRUE) или отключить автоматический выбор части клиентской области окна.

Замечания

CMDIChildWndEx::CanShowOnTaskBarTabs

Сообщает платформе, можно ли отображать этот дочерний элемент MDI на вкладках панели задач Windows 7.

virtual BOOL CanShowOnTaskBarTabs();

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если содержимое дочернего элемента MDI можно отобразить на эскизах панели задач Windows 7.

Замечания

Переопределите этот метод в производном классе и верните значение FALSE, чтобы отключить внешний вид этого дочернего элемента MDI на вкладках панели задач Windows 7.

CMDIChildWndEx::ActivateTopLevelFrame

Вызывается платформой для активации кадра верхнего уровня при активации приложения на вкладке панели задач.

virtual void ActivateTopLevelFrame();

Замечания

См. также

Диаграмма иерархии
Классы
Класс CMDIChildWnd
Класс CMFCWindowsManagerDialog
Класс CMDIFrameWndEx