共用方式為


CAutoHideDockSite 類別

CAutoHideDockSite 擴充 CDockSite 類別 ,以實作自動隱藏停駐窗格。

語法

class CAutoHideDockSite : public CDockSite

成員

公用建構函式

名稱 描述
名稱 描述
CAutoHideDockSite::CAutoHideDockSite 建構 CAutoHideDockSite 物件。
CAutoHideDockSite::~CAutoHideDockSite 解構函式。

公用方法

名稱 描述
名稱 描述
CAutoHideDockSite::AllowShowOnPaneMenu 指出 是否 CAutoHideDockSite 顯示在窗格功能表上。
CAutoHideDockSite::CanAcceptPane 判斷基底窗格物件是否衍生自 CMFCAutoHideBar 類別
CAutoHideDockSite::D ockPane 將窗格停駐到這個 CAuotHideDockSite 物件。
CAutoHideDockSite::GetAlignRect 擷取螢幕座標中停駐月臺的大小。
CAutoHideDockSite::RepositionPanes 使用全域邊界和按鈕間距來重新繪製 窗格 CAutoHideDockSite
CAutoHideDockSite::SetOffsetLeft 設定停駐列左側的邊界。
CAutoHideDockSite::SetOffsetRight 設定停駐列右側的邊界。
CAutoHideDockSite::UnSetAutoHideMode 針對 上的 CAutoHideDockSite 物件呼叫 CMFCAutoHideBar::UnSetAutoHideMode

資料成員

名稱 描述
名稱 描述
CAutoHideDockSite::m_nExtraSpace 定義工具列與停駐列邊緣之間的空間大小。 此空間會根據停駐空間的對齊方式,從左邊緣或上邊緣來測量。

備註

當您呼叫 CFrameWndEx::EnableAutoHidePanes 時,架構會自動建立 CAutoHideDockSite 物件。 在大部分情況下,您不需要直接具現化或使用這個類別。

停駐列是停駐窗格左側與 CMFCAutoHideButton 類別 左側 之間的間距。

繼承階層架構

CObject

CCmdTarget

CWnd

CBasePane

CDockSite

範例

下列範例示範如何從 CMFCAutoHideBar 物件擷取 CAutoHideDockSite 物件,以及如何設定停駐列的左右邊界。

CAutoHideDockSite *pParentDockBar = DYNAMIC_DOWNCAST(CAutoHideDockSite, pParentBar->GetParentDockSite());
pParentDockBar->SetOffsetLeft(10);
pParentDockBar->SetOffsetRight(10);

需求

標頭: afxautohidedocksite.h

CAutoHideDockSite::CanAcceptPane

判斷基底窗格是 CMFCAutoHideBar 物件或衍生自 CMFCAutoHideBar

virtual BOOL CanAcceptPane(const CBasePane* pBar) const;

參數

pBar
[in]架構測試的基底窗格。

傳回值

如果 pBar 衍生自 CMFCAutoHideBar ,則為 TRUE;否則為 FALSE。

備註

如果基底窗格物件衍生自 CMFCAutoHideBar ,它可以包含 CAutoHideDockSite

CAutoHideDockSite::D ockPane

將窗格停駐到這個 CAutoHideDockSite 物件。

virtual void DockPane(
    CPane* pWnd,
    AFX_DOCK_METHOD dockMethod,
    LPRECT lpRect = NULL);

參數

pWnd
[in]架構停駐的窗格。

dockMethod
[in]窗格的停駐選項。

lpRect
[in]指定停駐窗格界限的矩形。

備註

預設實作不會使用 參數 dockMethod ,其提供以供日後使用。

如果 lpRect 為 Null,架構會將窗格放在停駐月臺的預設位置。 如果停駐月臺為水準,預設位置位於停駐站月臺最左邊。 否則,預設位置位於停駐月臺頂端。

CAutoHideDockSite::GetAlignRect

擷取螢幕座標中停駐月臺的大小。

void GetAlignRect(CRect& rect) const;

參數

矩形
[in]矩形的參考。 方法會將停駐月臺的大小儲存在此矩形中。

備註

矩形會針對位移邊界進行調整,使其不包含。

CAutoHideDockSite::m_nExtraSpace

CAutoHideDockSite 類別 邊緣 CMFCAutoHideBar 類別 物件之間的空間大小。

static int m_nExtraSpace;

備註

CMFCAutoHideBar當 停駐在 的 CAutoHideDockSite 時,它不應該佔用整個碼頭月臺。 這個全域變數會控制 的左框線或上框線 CMFCAutoHideBar 與對應 CAutoHideDockSite 邊緣之間的額外空間。 使用上邊緣或左邊緣取決於目前的對齊方式。

CAutoHideDockSite::SetOffsetLeft

設定停駐列左側的邊界。

void SetOffsetLeft(int nOffset);

參數

nOffset
[in]新的位移。

備註

CMFCAutoHideBar 物件會以靜態方式放置在 物件上 CAutoHideDockSite 。 這表示使用者無法手動變更物件的位置 CMFCAutoHideBar 。 方法 SetOffsetLeft 會控制最 CMFCAutoHideBar 左邊和 左邊 CAutoHideDockSite 之間的間距。

CAutoHideDockSite::SetOffsetRight

設定停駐列右側的邊界。

void SetOffsetRight(int nOffset);

參數

nOffset
[in]新的位移。

備註

CMFCAutoHideBar 物件會以靜態方式放置在 物件上 CAutoHideDockSite 。 這表示使用者無法手動變更物件的位置 CMFCAutoHideBar 。 方法 SetOffsetRight 會控制最 CMFCAutoHideBar 右邊和 右邊 CAutoHideDockSite 之間的間距。

CAutoHideDockSite::RepositionPanes

重新繪製 CAutoHideDockSite 上的 窗格。

virtual void RepositionPanes(CRect& rectNewClientArea);

參數

rectNewClientArea
[in]保留的值。

備註

預設實作不會使用 rectNewClientArea 。 它會使用全域工具列邊界和按鈕間距來重新繪製窗格。

CAutoHideDockSite::UnSetAutoHideMode

呼叫 DOCK 月臺上物件的 CMFCAutoHideBar::UnSetAutoHideMode

void UnSetAutoHideMode(CMFCAutoHideBar* pAutoHideToolbar);

參數

pAutoHideToolbar
[in]位於 上的 CAutoHideDockSite CMFCAutoHideBar 物件窗格指標

備註

此方法會搜尋包含 pAutoHideToolbar 的資料列。 CMFCAutoHideBar.UnSetAutoHideMode它會呼叫該資料列上的所有 CMFCAutoHideBar 物件。 如果 找不到 pAutoHideToolbar 或為 Null,這個方法會針對 上 CAutoHideDockSite 的所有 CMFCAutoHideBar 物件呼叫 CMFCAutoHideBar.UnSetAutoHideMode

另請參閱

階層架構圖表
類別
CDockSite 類別