Freigeben über


CPaneDivider-Klasse

Ausführliche Informationen finden Sie im Quellcode des Ordners VC\atlmfc\src\mfc der Visual Studio-Installation.

Die CPaneDivider Klasse teilt zwei Bereiche, teilt zwei Gruppen von Bereichen oder trennt eine Gruppe von Bereichen vom Clientbereich des Hauptframefensters.

Syntax

class CPaneDivider : public CBasePane

Member

Öffentliche Konstruktoren

Name Beschreibung
CPaneDivider::CPaneDivider

Öffentliche Methoden

Name Beschreibung
CPaneDivider::AddPaneContainer
CPaneDivider::AddPane
CPaneDivider::AddRecentPane
CPaneDivider::CalcExpectedDockedRect
CPaneDivider::CalcFixedLayout (Außerkraftsetzungen CBasePane::CalcFixedLayout.)
CPaneDivider::CheckVisibility
CPaneDivider::CreateEx (Außerkraftsetzungen CBasePane::CreateEx.)
CPaneDivider::D oesAllowDynInsertBefore (Außerkraftsetzungen CBasePane::D oesAllowDynInsertBefore.)
CPaneDivider::D oesContainFloatingPane
CPaneDivider::FindPaneContainer
CPaneDivider::FindTabbedPane
CPaneDivider::GetDefaultWidth
CPaneDivider::GetFirstPane
CPaneDivider::GetPaneDividers Gibt die Liste der Bereichsteiler zurück, die sich in der CPaneContainer-Klasse befinden. Diese Methode sollte nur für Standardbereichstrennlinien aufgerufen werden.
CPaneDivider::GetPaneDividerStyle
CPaneDivider::GetPanes Gibt die Liste der Bereiche zurück, die sich in der CPaneContainer-Klasse befinden. Diese Methode sollte nur für Standardbereichstrennlinien aufgerufen werden.
CPaneDivider::GetRootContainerRect
CPaneDivider::GetWidth
CPaneDivider::Init
CPaneDivider::InsertPane
CPaneDivider::IsAutoHideMode (Außerkraftsetzungen CBasePane::IsAutoHideMode.)
CPaneDivider::IsDefault
CPaneDivider::IsHorizontal (Außerkraftsetzungen CBasePane::IsHorizontal.)
CPaneDivider::Move
CPaneDivider::NotifyAboutRelease
CPaneDivider::OnShowPane
CPaneDivider::ReleaseEmptyPaneContainers
CPaneDivider::RemovePane
CPaneDivider::ReplacePane
CPaneDivider::RepositionPanes
CPaneDivider::Serialize (Überschreibt CBasePane::Serialize.)
CPaneDivider::SetAutoHideMode
CPaneDivider::SetPaneContainerManager
CPaneDivider::ShowWindow
CPaneDivider::StoreRecentDockSiteInfo
CPaneDivider::StoreRecentTabRelatedInfo
Name Beschreibung
CPaneDivider::m_nDefaultWidth Gibt die Standardbreite in Pixeln aller Bereichstrennlinien in der Anwendung an.
CPaneDivider::m_pSliderRTC Enthält einen Zeiger auf die Laufzeitklasseninformationen zu einem abgeleiteten CPaneDividerObjekt.

Hinweise

Das Framework erstellt CPaneDivider Objekte automatisch, wenn ein Bereich angedockt wird.

Es gibt zwei Arten von Bereichsteilern:

  • Eine Standardbereichstrennlinie wird erstellt, wenn eine Gruppe von Bereichen an eine Seite des Hauptrahmenfensters angedockt wird. Die Standardbereichstrennlinie enthält einen Zeiger auf die CPaneContainerManager-Klasse und leitet die meisten Vorgänge in der Gruppe von Bereichen um (z. B. Ändern der Größe eines Bereichs oder Andocken eines anderen Bereichs oder Containers) an den Container-Manager. Jeder Andockbereich behält einen Zeiger auf seine Standardbereichstrennlinie bei.

  • Eine normale Bereichstrennlinie teilt einfach zwei Bereiche in einem Container. Weitere Informationen finden Sie unter CPaneContainer-Klasse.

Beispiel

Das folgende Codebeispiel zeigt den Abruf eines CPaneDivider-Objekts aus einem CWorkspaceBar-Objekt. Dieser Codeausschnitt ist Teil des MDI Tabs Demo-Beispiels.

// CWorkspaceBar m_wndWorkSpace
CPaneDivider *pSlider = m_wndWorkSpace.GetDefaultPaneDivider();

Vererbungshierarchie

CObject
└ CCmdTarget
└ CWnd
  └ CBasePane
   └ CPaneDivider

Anforderungen

Header: afxPaneDivider.h

CPaneDivider::SetAutoHideMode

void SetAutoHideMode(BOOL bMode);

Parameter

[in] bMode

Hinweise

CPaneDivider::SetPaneContainerManager

void SetPaneContainerManager(CPaneContainerManager* p);

Parameter

[in] p

Hinweise

CPaneDivider::AddPane

virtual void AddPane(CDockablePane* pBar);

Parameter

[in] pBar

Hinweise

CPaneDivider::AddPaneContainer

virtual BOOL AddPaneContainer(
    CPaneContainerManager& barContainerManager,
    BOOL bOuterEdge);

virtual BOOL AddPaneContainer(
    CDockablePane* pTargetBar,
    CPaneContainerManager& barContainerManager,
    DWORD dwAlignment);

Parameter

[in] barContainerManager
[in] bOuterEdge
[in] pTargetBar
[in] dwAlignment

Rückgabewert

Bemerkungen

CPaneDivider::AddRecentPane

virtual CDockablePane* AddRecentPane(CDockablePane* pBar);

Parameter

[in] pBar

Rückgabewert

Bemerkungen

CPaneDivider::CalcExpectedDockedRect

virtual void CalcExpectedDockedRect(
    CWnd* pWndToDock,
    CPoint ptMouse,
    CRect& rectResult,
    BOOL& bDrawTab,
    CDockablePane** ppTargetBar);

Parameter

[in] pWndToDock
[in] ptMouse
[in] rectResult
[in] bDrawTab
[in] ppTargetBar

Hinweise

CPaneDivider::CalcFixedLayout

virtual CSize CalcFixedLayout(
    BOOL bStretch,
    BOOL bHorz);

Parameter

[in] bStretch
[in] bHorz

Rückgabewert

Bemerkungen

CPaneDivider::CheckVisibility

virtual BOOL CheckVisibility();

Rückgabewert

Bemerkungen

CPaneDivider::CPaneDivider

CPaneDivider();

CPaneDivider(
    BOOL bDefaultSlider,
    CWnd* pParent = NULL);

Parameter

[in] bDefaultSlider
[in] pParent

Rückgabewert

Bemerkungen

CPaneDivider::CreateEx

virtual BOOL CreateEx(
    DWORD dwStyleEx,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID,
    CCreateContext* pContext);

Parameter

[in] dwStyleEx
[in] dwStyle
[in] rect
[in] pParentWnd
[in] nID
[in] pContext

Rückgabewert

Bemerkungen

CPaneDivider::D oesAllowDynInsertBefore

virtual BOOL DoesAllowDynInsertBefore() const;

Rückgabewert

Bemerkungen

CPaneDivider::D oesContainFloatingPane

virtual BOOL DoesContainFloatingPane();

Rückgabewert

Bemerkungen

CPaneDivider::FindPaneContainer

CPaneContainer* FindPaneContainer(
    CDockablePane* pBar,
    BOOL& bLeftBar);

Parameter

[in] pBar
[in] bLeftBar

Rückgabewert

Bemerkungen

CPaneDivider::FindTabbedPane

CDockablePane* FindTabbedPane(UINT nID);

Parameter

[in] nID

Rückgabewert

Bemerkungen

CPaneDivider::GetDefaultWidth

static int __stdcall GetDefaultWidth();

Rückgabewert

Bemerkungen

CPaneDivider::GetFirstPane

const CBasePane* GetFirstPane() const;

Rückgabewert

Bemerkungen

CPaneDivider::GetPaneDividers

Gibt die Liste der Bereichsteiler zurück, die sich in der CPaneContainer-Klasse befinden. Diese Methode sollte nur für Standardbereichstrennlinien aufgerufen werden.

void GetPaneDividers(CObList& lstSliders);

Parameter

lstSliders
[out] Enthält die Liste der Bereichsteiler, die sich im Bereichscontainer befinden.

Hinweise

Diese Methode sollte nur für Standardbereichsteiler aufgerufen werden. Eine Standardbereichstrennlinie ist eine Trennlinie, die die Größe des gesamten Bereichscontainers ändert.

CPaneDivider::GetPaneDividerStyle

DWORD GetPaneDividerStyle() const;

Rückgabewert

Bemerkungen

CPaneDivider::GetPanes

Gibt die Liste der Bereiche zurück, die sich in der CPaneContainer-Klasse befinden. Diese Methode sollte nur aufgerufen werden, um Standardbereichstrennlinien abzurufen.

void GetPanes(CObList& lstBars);

Parameter

lstBars
[out] Enthält die Liste der Bereiche, die sich im Bereichscontainer befinden.

Hinweise

Diese Methode sollte nur für Standardbereichsteiler aufgerufen werden. Eine Standardbereichstrennlinie ist eine Trennlinie, die die Größe des gesamten Bereichscontainers ändert.

CPaneDivider::GetRootContainerRect

CRect GetRootContainerRect();

Rückgabewert

Bemerkungen

CPaneDivider::GetWidth

int GetWidth() const;

Rückgabewert

Bemerkungen

CPaneDivider::Init

void Init(
    BOOL bDefaultSlider = FALSE,
    CWnd* pParent = NULL);

Parameter

[in] bDefaultSlider
[in] pParent

Hinweise

CPaneDivider::InsertPane

virtual BOOL InsertPane(
    CDockablePane* pBarToInsert,
    CDockablePane* pTargetBar,
    DWORD dwAlignment,
    LPCRECT lpRect = NULL);

Parameter

[in] pBarToInsert
[in] pTargetBar
[in] dwAlignment
[in] lpRect

Rückgabewert

Bemerkungen

CPaneDivider::IsAutoHideMode

BOOL IsAutoHideMode() const;

Rückgabewert

Bemerkungen

CPaneDivider::IsDefault

BOOL IsDefault() const;

Rückgabewert

Bemerkungen

CPaneDivider::IsHorizontal

BOOL IsHorizontal() const;

Rückgabewert

Bemerkungen

CPaneDivider::m_nDefaultWidth

Gibt die Standardbreite in Pixel aller Bereichstrennlinien in der Anwendung an.

AFX_IMPORT_DATA static int m_nDefaultWidth;

CPaneDivider::Move

virtual void Move(
    CPoint& ptOffset,
    BOOL bAdjustLayout = TRUE);

Parameter

[in] ptOffset
[in] bAdjustLayout

Hinweise

CPaneDivider::m_pSliderRTC

Enthält einen Zeiger auf Laufzeitklasseninformationen zu einem abgeleiteten CPaneDividerObjekt.

AFX_IMPORT_DATA static CRuntimeClass* m_pSliderRTC;

Hinweise

Legen Sie diese Membervariable fest, wenn Sie eine benutzerdefinierte Bereichstrennlinie erstellen. Auf diese Weise kann das Framework ihre Bereichstrennlinie erstellen, wenn der Bereich gezeichnet wird.

Beispiel

Das folgende Beispiel zeigt, wie die m_pSliderRTC Membervariable festgelegt wird:

class CMySplitter : public CPaneDivider
{
...
};

CPaneDivider::m_pSliderRTC = RUNTIME_CLASS(CMySpliter);

CPaneDivider::NotifyAboutRelease

virtual void NotifyAboutRelease();

Hinweise

CPaneDivider::OnShowPane

virtual void OnShowPane(
    CDockablePane* pBar,
    BOOL bShow);

Parameter

[in] pBar
[in] bShow

Hinweise

CPaneDivider::ReleaseEmptyPaneContainers

void ReleaseEmptyPaneContainers();

Hinweise

CPaneDivider::RemovePane

virtual void RemovePane(CDockablePane* pBar);

Parameter

[in] pBar

Hinweise

CPaneDivider::ReplacePane

virtual BOOL ReplacePane(
    CDockablePane* pBarToReplace,
    CDockablePane* pBarToReplaceWith);

Parameter

[in] pBarToReplace
[in] pBarToReplaceWith

Rückgabewert

Bemerkungen

CPaneDivider::RepositionPanes

virtual void RepositionPanes(
    CRect& rectNew,
    HDWP& hdwp);

Parameter

[in] rectNew
[in] hdwp

Hinweise

CPaneDivider::Serialize

void Serialize(CArchive& ar);

Parameter

[in] ar

Hinweise

CPaneDivider::ShowWindow

void ShowWindow(int nCmdShow);

Parameter

[in] nCmdShow

Hinweise

CPaneDivider::StoreRecentDockSiteInfo

void StoreRecentDockSiteInfo(CDockablePane* pBar);

Parameter

[in] pBar

Hinweise

CPaneDivider::StoreRecentTabRelatedInfo

void StoreRecentTabRelatedInfo(
    CDockablePane* pDockingBar,
    CDockablePane* pTabbedBar);

Parameter

[in] pDockingBar
[in] pTabbedBar

Hinweise

Weitere Informationen

Hierarchiediagramm
Klassen
CPaneContainerManager-Klasse
CPaneContainer-Klasse
CDockingManager-Klasse
CBasePane-Klasse