共用方式為


CMDIChildWndEx 類別

類別 CMDIChildWndEx 提供 Windows 多個文檔介面 (MDI) 子視窗的功能。 它會擴充 CMDIChildWnd 類別 的功能 。 當 MDI 應用程式使用特定 MFC 類別時,Framework 必須有這個類別。

如需詳細資訊,請參閱 Visual Studio 安裝的 VC\atlmfc\src\mfc 資料夾中的原始程式碼

語法

class CMDIChildWndEx : public CMDIChildWnd

成員

公用方法

名稱 描述
CMDIChildWndEx::ActivateTopLevelFrame 架構在內部呼叫,以在應從工作列索引標籤啟動應用程式時啟動最上層框架。
CMDIChildWndEx::AddDockSite 這個方法不會使用或實作。
CMDIChildWndEx::AddPane 加入窗格。
CMDIChildWndEx::AddTabbedPane 新增索引標籤式窗格。
CMDIChildWndEx::AdjustDockingLayout 調整停駐配置。
CMDIChildWndEx::CanShowOnMDITabs
CMDIChildWndEx::CanShowOnTaskBarTabs 告知架構是否可以在 Windows 7 工作列索引標籤上顯示這個 MDI 子系。
CMDIChildWndEx::CanShowOnWindowsList 如果 MDI 子視窗名稱可以顯示在 [CMFCWindowsManagerDialog 類別 ] 對話方塊中,則會傳回 TRUE。 否則會傳回 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 工作列索引標籤註冊的索引標籤 Proxy 視窗。
CMDIChildWndEx::GetTaskbarPreviewWnd 當架構需要取得要顯示在 Windows 7 工作列索引標籤縮圖上的子視窗(通常是檢視或分割器視窗)時,由架構呼叫。
CMDIChildWndEx::GetTaskbarThumbnailClipRect 當架構需要選取視窗工作區的一部分時,由架構呼叫,以在工作列中顯示為該視窗的縮圖。
CMDIChildWndEx::GetThisClass 由架構呼叫,以取得與這個類別類型相關聯的 CRuntimeClass 物件的指標
CMDIChildWndEx::GetToolbarButtonToolTipText 由架構呼叫以擷取工具列按鈕的工具提示。
CMDIChildWndEx::InsertPane 向停駐管理員註冊指定的窗格。
CMDIChildWndEx::InvalidateIconicBitmaps 使 MDI 子系的圖示點陣圖表示失效。
CMDIChildWndEx::IsPointNearDockSite 判斷指定的點是否靠近停駐月臺。
CMDIChildWndEx::IsReadOnly 如果子視窗中顯示的檔是唯讀的,則傳回 TRUE。 否則會傳回 FALSE。
CMDIChildWndEx::IsRegisteredWithTaskbarTabs 如果 MDI 子系已成功向 Windows 7 工作列索引標籤註冊,則傳回 TRUE。
CMDIChildWndEx::IsTabbedPane 如果 MDI 子視窗包含停駐窗格,則傳回 TRUE。 否則會傳回 FALSE。
CMDIChildWndEx::IsTaskbarTabsSupportEnabled 指出 MDI 子系是否可以出現在 Windows 7 工作列索引標籤上。
CMDIChildWndEx::IsTaskbarThumbnailClipRectEnabled 指出是否啟用或停用視窗工作區中視窗縮圖的某個部分的自動選取。
CMDIChildWndEx::m_dwDefaultTaskbarTabPropertyFlags 當索引標籤(MDI 子系)向 Windows 7 工作列索引標籤註冊時,架構會傳遞至 SetTaskbarTabProperties 方法的旗標組合。 預設組合為 STPF_USEAPPTHUMBNAILWHENACTIVE | STPF_USEAPPPEEKWHENACTIVE
CMDIChildWndEx::OnGetIconicLivePreviewBitmap 當架構需要取得 MDI 子系即時預覽的點陣圖時,由架構呼叫。
CMDIChildWndEx::OnGetIconicThumbnail 當架構需要取得 MDI 子系之標誌性縮圖的點陣圖時,由架構呼叫。
CMDIChildWndEx::OnMoveMiniFrame 由架構呼叫以移動迷你框架視窗。
CMDIChildWndEx::OnPressTaskbarThmbnailCloseButton 當使用者按下工作列索引標籤縮圖上的關閉按鈕時,由架構呼叫。
CMDIChildWndEx::OnSetPreviewMode 由架構呼叫以進入或結束預覽列印模式。
CMDIChildWndEx::OnTaskbarTabThumbnailActivate 當工作列索引標籤縮圖應該處理WM_ACTI加值稅E訊息時,由架構呼叫。
CMDIChildWndEx::OnTaskbarTabThumbnailMouseActivate 當工作列索引標籤縮圖應該處理WM_MOUSEACTI加值稅E訊息時,由架構呼叫。
CMDIChildWndEx::OnTaskbarTabThumbnailStretch 當架構需要延展 MDI 子系的 Windows 7 工作列索引標籤縮圖預覽時,由架構呼叫。
CMDIChildWndEx::OnUpdateFrameTitle 由架構呼叫以更新框架標題。 (覆寫 CMDIChildWnd::OnUpdateFrameTitle。)
CMDIChildWndEx::P aneFromPoint 傳回包含指定點的窗格。
CMDIChildWndEx::PreTranslateMessage CWinApp 類別用來轉譯分派至 TranslateMessageDispatchMessage Windows 函式之前的視窗訊息。 (覆寫 CWnd::PreTranslateMessage。)
CMDIChildWndEx::RecalcLayout 重新計算視窗的配置。
CMDIChildWndEx::RegisterTaskbarTab 向 Windows 7 工作列索引標籤註冊 MDI 子系。
CMDIChildWndEx::RemovePaneFromDockManager 從停駐管理員移除窗格。
CMDIChildWndEx::SetRelatedTabGroup
CMDIChildWndEx::SetTaskbarTabActive 啟動對應的 Windows 7 工作列索引標籤。
CMDIChildWndEx::SetTaskbarTabOrder 在 Windows 7 工作列索引標籤上,于指定的視窗之前插入 MDI 子系。
CMDIChildWndEx::SetTaskbarTabProperties 設定 [Windows 7 工作列] 索引標籤的屬性。
CMDIChildWndEx::SetTaskbarThumbnailClipRect 由架構在內部呼叫,以設定裁剪矩形,以選取視窗工作區的一部分,以在工作列中顯示為該視窗的縮圖。
CMDIChildWndEx::ShowPane
CMDIChildWndEx::UnregisterTaskbarTab 從 Windows 7 工作列索引標籤中移除 MDI 子系。
CMDIChildWndEx::UpdateTaskbarTabIcon 更新 Windows 7 工作列索引標籤圖示。

備註

若要利用 MDI 應用程式中的擴充停駐功能,請從 CMDIChildWndEx 衍生應用程式的 MDI 子視窗類別,而不是 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

CMDIChildWndEx

需求

標頭: afxMDIChildWndEx.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();

傳回值

如果視窗可以在 [Windows ] 對話方塊中顯示,則為 TRUE,否則為 FALSE。

備註

覆寫衍生類別中的這個方法,如果視窗不應該顯示在 Windows 對話方塊中,則傳回 FALSE。 從 呼叫 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, 則會在 pTarget 之後 插入 pControlBar 。 如果為 FALSE, 則會在 pTarget 之前 插入 pControlBar

傳回值

如果方法成功,則為 TRUE,否則為 FALSE。

CMDIChildWndEx::IsPointNearDockSite

判斷指定的點是否靠近停駐月臺。

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

參數


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

傳回值

如果 MDI 子視窗包含已轉換成索引標籤式檔的停駐窗格,則為 TRUE;否則為 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;

參數


[in]指定要檢查的點,以螢幕座標為單位。

nSensitivity
[in]依此數量增加搜尋區域。 如果指定的點落在增加的區域,窗格會滿足搜尋準則。

bExactBar
[in]TRUE 表示忽略 nSensitivity 參數,否則為 FALSE。

pRTCBarType
[in]如果不是 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]要移除之窗格的指標。

bDestroy
[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

從 Windows 7 工作列索引標籤中移除 MDI 子系。

void UnregisterTaskbarTab(BOOL bCheckRegisteredMDIChildCount = TRUE);

參數

bCheckRegisteredMDIChildCount
指定此函式是否需要檢查向 MDI 索引標籤註冊的 MDI 子係數目。 如果這個數位是 0,則此函式會從應用程式的工作列縮圖中移除裁剪矩形。

備註

CMDIChildWndEx::SetTaskbarThumbnailClipRect

由架構呼叫,以設定裁剪矩形,以選取視窗工作區的一部分,以在工作列中顯示為該視窗的縮圖。

virtual BOOL SetTaskbarThumbnailClipRect(CRect rect);

參數

矩形
指定新的裁剪矩形。 如果矩形是空的或 Null,則會移除裁剪。

傳回值

如果成功,則為 TRUE,否則為 FALSE。

備註

CMDIChildWndEx::SetTaskbarTabProperties

設定 [Windows 7 工作列] 索引標籤的屬性。

void SetTaskbarTabProperties(DWORD dwFlags);

參數

dwFlags
STPFLAG 值的組合。 如需詳細資訊,請參閱 ITaskbarList4::SetTabProperties

備註

CMDIChildWndEx::SetTaskbarTabOrder

在 Windows 7 工作列索引標籤上的指定視窗之前插入 MDI 子系。

void SetTaskbarTabOrder(CMDIChildWndEx* pWndBefore = NULL);

參數

pWndBefore
MDI 子視窗的指標,其縮圖會插入左側。 此視窗必須已經透過 RegisterTaskbarTab 註冊。 如果此值為 Null,則會將新的縮圖新增至清單結尾。

備註

CMDIChildWndEx::SetTaskbarTabActive

啟動對應的 Windows 7 工作列索引標籤。

void SetTaskbarTabActive();

備註

CMDIChildWndEx::RegisterTaskbarTab

使用 Windows 7 工作列索引標籤註冊 MDI 子系。

virtual void RegisterTaskbarTab(CMDIChildWndEx* pWndBefore = NULL);

參數

pWndBefore
MDI 子視窗的指標,其縮圖會插入左側。 此視窗必須已經透過 RegisterTaskbarTab 註冊。 如果此值為 Null,則會將新的縮圖新增至清單結尾。

備註

CMDIChildWndEx::OnTaskbarTabThumbnailStretch

當架構需要延展 MDI 子系的 Windows 7 工作列索引標籤縮圖預覽時,由架構呼叫。

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

參數

hBmpDst
目的地點陣圖的控制碼。

rectDst
指定目的地矩形。

hBmpSrc
來源點陣圖的控制碼。

rectSrc
指定來源矩形。

備註

需求:afxmdichildwndex.h

CMDIChildWndEx::OnTaskbarTabThumbnailMouseActivate

當工作列索引標籤縮圖應該處理WM_MOUSEACTI加值稅E訊息時,由架構呼叫。

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

參數

pDesktopWnd
指定要啟動之視窗的最上層父視窗指標。 指標可能是暫時的,不應該儲存。

nHitTest
指定點擊測試區功能變數代碼。 點擊測試是決定游標位置的測試。

message
指定滑鼠訊息編號。

備註

預設實作會啟動相關的 MDI 子框架。

CMDIChildWndEx::OnTaskbarTabThumbnailActivate

當工作列索引標籤縮圖應該處理WM_ACTI加值稅E訊息時,由架構呼叫。

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
如果已要求 MDI 子系的點陣圖,且目前為使用中,而且主視窗不會最小化,則此參數為 TRUE。 在此情況下,預設處理會擷取主視窗的快照集。

ptLocation
指定主要 (最上層) 視窗用戶端座標中點陣圖的位置。 這個點應該由被呼叫者提供。

傳回值

如果已處理,則會將控制碼傳回有效的 32bpp 點陣圖,否則傳回 Null。

備註

覆寫衍生類別中的這個方法,並傳回有效的 32bpp 點陣圖,以便即時預覽 MDI 子系。 只有在 Windows 7 工作列索引標籤上顯示 MDI 子系時,才會呼叫這個方法。 如果您傳回 Null,MFC 會呼叫預設處理常式,並使用 PrintClientPrintWindow 取得點陣圖。

CMDIChildWndEx::m_dwDefaultTaskbarTabPropertyFlags

當索引標籤(MDI 子系)向 Windows 7 工作列索引標籤註冊時,架構會傳遞至 SetTaskbarTabProperties 方法的旗標組合。

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

傳回值

如果 MDI 子系可以出現在 Windows 7 工作列索引標籤上,則為 TRUE;如果 MDI 子系不能出現在 Windows 7 工作列索引標籤上,則為 FALSE。

備註

CMDIChildWndEx::IsRegisteredWithTaskbarTabs

如果 MDI 子系已成功向 Windows 7 工作列索引標籤註冊,則傳回 TRUE。

BOOL IsRegisteredWithTaskbarTabs();

傳回值

如果 MDI 子系已向 Windows 7 工作列索引標籤註冊,則為 TRUE;否則為 FALSE。

備註

CMDIChildWndEx::InvalidateIconicBitmaps

使 MDI 子系的圖示點陣圖表示失效。

BOOL InvalidateIconicBitmaps();

傳回值

如果停用 Windows 7 工作列支援,或 MDI 子系未向 Windows 7 工作列索引標籤註冊,則會傳回 FALSE;否則會傳回 TRUE。

備註

當 MDI 子系的即時內容或大小變更時,應該呼叫 。

CMDIChildWndEx::GetTaskbarThumbnailClipRect

當架構需要選取視窗工作區的一部分時,由架構呼叫,以在工作列中顯示為該視窗的縮圖。

virtual CRect GetTaskbarThumbnailClipRect() const;

傳回值

視窗座標中的矩形。 這個矩形會對應至最上層框架的工作區。 矩形應該是空的,以清除裁剪矩形。

備註

CMDIChildWndEx::GetTaskbarPreviewWnd

當架構需要取得要顯示在 Windows 7 工作列索引標籤縮圖上的子視窗(通常是檢視或分割器視窗)時,由架構呼叫。

virtual CWnd* GetTaskbarPreviewWnd();

傳回值

應該傳回物件的有效指標 CWnd ,其預覽應該顯示在與此 MDI 子系相關的 Windows 7 工作列索引標籤上。 預設實作會傳回這個具有AFX_IDW_PANE_FIRST控制項識別碼之 MDI 子系的子視窗(通常是 CView 衍生類別)。

備註

CMDIChildWndEx::GetTabProxyWnd

傳回向 Windows 7 工作列索引標籤註冊的索引標籤 Proxy 視窗。

CMDITabProxyWnd* GetTabProxyWnd();

傳回值

物件的指標 CMDITabProxyWnd ,其已向 Windows 7 工作列索引標籤註冊。

備註

CMDIChildWndEx::EnableTaskbarThumbnailClipRect

啟用或停用視窗工作區一部分的自動選取,以在工作列中顯示為該視窗的縮圖。

void EnableTaskbarThumbnailClipRect(BOOL bEnable = TRUE);

參數

bEnable
指定是否要啟用 (TRUE), 或停用 [FALSE] 自動選取要顯示之視窗工作區的一部分。

備註

CMDIChildWndEx::CanShowOnTaskBarTabs

告知架構是否可以在 Windows 7 工作列索引標籤上顯示這個 MDI 子系。

virtual BOOL CanShowOnTaskBarTabs();

傳回值

如果 MDI 子系的內容可以在 Windows 7 工作列縮圖上顯示,則為 TRUE。

備註

覆寫衍生類別中的這個方法,並傳回 FALSE 以停用 Windows 7 工作列索引標籤上這個 MDI 子系的外觀。

CMDIChildWndEx::ActivateTopLevelFrame

由架構呼叫,以在應用程式從工作列索引標籤啟動時啟動最上層框架。

virtual void ActivateTopLevelFrame();

備註

另請參閱

階層架構圖表
類別
CMDIChildWnd 類別
CMFCWindowsManagerDialog 類別
CMDIFrameWndEx 類別