Udostępnij za pośrednictwem


Klasa CPaneDivider

Aby uzyskać więcej informacji, zobacz kod źródłowy znajdujący się w folderze VC\atlmfc\src\mfc instalacji programu Visual Studio.

Klasa CPaneDivider dzieli dwa okienka, dzieli dwie grupy okienek lub oddziela grupę okienek od obszaru klienta okna głównego ramki.

Składnia

class CPaneDivider : public CBasePane

Członkowie

Konstruktory publiczne

Nazwa/nazwisko opis
CPaneDivider::CPaneDivider

Metody publiczne

Nazwa/nazwisko opis
CPaneDivider::AddPaneContainer
CPaneDivider::AddPane
CPaneDivider::AddRecentPane
CPaneDivider::CalcExpectedDockedRect
CPaneDivider::CalcFixedLayout (Przesłonięcia) CBasePane::CalcFixedLayout).
CPaneDivider::CheckVisibility
CPaneDivider::CreateEx (Przesłonięcia) CBasePane::CreateEx.)
CPaneDivider::D oesAllowDynInsertBefore (Przesłonięcia) CBasePane::D oesAllowDynInsertBefore.
CPaneDivider::D oesContainFloatingPane
CPaneDivider::FindPaneContainer
CPaneDivider::FindTabbedPane
CPaneDivider::GetDefaultWidth
CPaneDivider::GetFirstPane
CPaneDivider::GetPaneDividers Zwraca listę podziałów okienka, które znajdują się w klasie CPaneContainer. Ta metoda powinna być wywoływana tylko dla domyślnych separatorów okienek.
CPaneDivider::GetPaneDividerStyle
CPaneDivider::GetPanes Zwraca listę okienek znajdujących się w klasie CPaneContainer. Ta metoda powinna być wywoływana tylko dla domyślnych separatorów okienek.
CPaneDivider::GetRootContainerRect
CPaneDivider::GetWidth
CPaneDivider::Init
CPaneDivider::InsertPane
CPaneDivider::IsAutoHideMode (Przesłonięcia) CBasePane::IsAutoHideMode.)
CPaneDivider::IsDefault
CPaneDivider::IsHorizontal (Przesłonięcia) CBasePane::IsHorizontal.)
CPaneDivider::Move
CPaneDivider::NotifyAboutRelease
CPaneDivider::OnShowPane
CPaneDivider::ReleaseEmptyPaneContainers
CPaneDivider::RemovePane
CPaneDivider::ReplacePane
CPaneDivider::RepositionPanes
CPaneDivider::Serialize (Przesłania CBasePane::Serialize).
CPaneDivider::SetAutoHideMode
CPaneDivider::SetPaneContainerManager
CPaneDivider::ShowWindow
CPaneDivider::StoreRecentDockSiteInfo
CPaneDivider::StoreRecentTabRelatedInfo
Nazwa/nazwisko opis
CPaneDivider::m_nDefaultWidth Określa domyślną szerokość w pikselach wszystkich podziałów okienek w aplikacji.
CPaneDivider::m_pSliderRTC Przechowuje wskaźnik do informacji o klasie środowiska uruchomieniowego o obiekcie pochodnym CPaneDivider.

Uwagi

Platforma automatycznie tworzy CPaneDivider obiekty po zadokowaniu okienka.

Istnieją dwa typy podziałów okienek:

  • Domyślny podział okienka jest tworzony, gdy grupa okienek jest zadokowana po stronie głównego okna ramki. Domyślny podział okienka zawiera wskaźnik do klasy CPaneContainerManager i przekierowuje większość operacji w grupie okienek (takich jak zmiana rozmiaru okienka lub zadokowanie innego okienka lub kontenera) do menedżera kontenerów. Każde okienko dokowania zachowuje wskaźnik do domyślnego podziału okienka.

  • Zwykły podział okienka dzieli tylko dwa okienka w kontenerze. Aby uzyskać więcej informacji, zobacz Klasa CPaneContainer.

Przykład

W poniższym przykładzie pokazano, jak uzyskać CPaneDivider obiekt z CWorkspaceBar obiektu. Ten fragment kodu jest częścią przykładu pokazu kart MDI.

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

Hierarchia dziedziczenia

Cobject
└ CCmdTarget
└ CWnd
  └ CBasePane
   └ CPaneDivider

Wymagania

Nagłówek: afxPaneDivider.h

CPaneDivider::SetAutoHideMode

void SetAutoHideMode(BOOL bMode);

Parametry

[in] bMode

Uwagi

CPaneDivider::SetPaneContainerManager

void SetPaneContainerManager(CPaneContainerManager* p);

Parametry

[in] P

Uwagi

CPaneDivider::AddPane

virtual void AddPane(CDockablePane* pBar);

Parametry

[in] Pasek p

Uwagi

CPaneDivider::AddPaneContainer

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

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

Parametry

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

Wartość zwracana

Uwagi

CPaneDivider::AddRecentPane

virtual CDockablePane* AddRecentPane(CDockablePane* pBar);

Parametry

[in] Pasek p

Wartość zwracana

Uwagi

CPaneDivider::CalcExpectedDockedRect

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

Parametry

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

Uwagi

CPaneDivider::CalcFixedLayout

virtual CSize CalcFixedLayout(
    BOOL bStretch,
    BOOL bHorz);

Parametry

[in] bStretch
[in] Bhorz

Wartość zwracana

Uwagi

CPaneDivider::CheckVisibility

virtual BOOL CheckVisibility();

Wartość zwracana

Uwagi

CPaneDivider::CPaneDivider

CPaneDivider();

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

Parametry

[in] bDefaultSlider
[in] PParent

Wartość zwracana

Uwagi

CPaneDivider::CreateEx

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

Parametry

[in] dwStyleEx
[in] Dwstyle
[in] Rect
[in] pParentWnd
[in] Nid
[in] Pcontext

Wartość zwracana

Uwagi

CPaneDivider::D oesAllowDynInsertBefore

virtual BOOL DoesAllowDynInsertBefore() const;

Wartość zwracana

Uwagi

CPaneDivider::D oesContainFloatingPane

virtual BOOL DoesContainFloatingPane();

Wartość zwracana

Uwagi

CPaneDivider::FindPaneContainer

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

Parametry

[in] Pasek p
[in] bLeftBar

Wartość zwracana

Uwagi

CPaneDivider::FindTabbedPane

CDockablePane* FindTabbedPane(UINT nID);

Parametry

[in] Nid

Wartość zwracana

Uwagi

CPaneDivider::GetDefaultWidth

static int __stdcall GetDefaultWidth();

Wartość zwracana

Uwagi

CPaneDivider::GetFirstPane

const CBasePane* GetFirstPane() const;

Wartość zwracana

Uwagi

CPaneDivider::GetPaneDividers

Zwraca listę podziałów okienka, które znajdują się w klasie CPaneContainer. Ta metoda powinna być wywoływana tylko dla domyślnych separatorów okienek.

void GetPaneDividers(CObList& lstSliders);

Parametry

lstSliders
[out] Zawiera listę rozdzielaczy okienka znajdujących się w kontenerze okienka.

Uwagi

Ta metoda powinna być wywoływana tylko dla domyślnych rozdzielaczy okienka. Domyślny podział okienka to rozdzielacz, który zmienia rozmiar całego kontenera okienka.

CPaneDivider::GetPaneDividerStyle

DWORD GetPaneDividerStyle() const;

Wartość zwracana

Uwagi

CPaneDivider::GetPanes

Zwraca listę okienek znajdujących się w klasie CPaneContainer. Ta metoda powinna być wywoływana tylko w celu pobrania domyślnych podziałów okienek.

void GetPanes(CObList& lstBars);

Parametry

lstBars
[out] Zawiera listę okienek znajdujących się w kontenerze okienka.

Uwagi

Ta metoda powinna być wywoływana tylko dla domyślnych rozdzielaczy okienka. Domyślny podział okienka to rozdzielacz, który zmienia rozmiar całego kontenera okienka.

CPaneDivider::GetRootContainerRect

CRect GetRootContainerRect();

Wartość zwracana

Uwagi

CPaneDivider::GetWidth

int GetWidth() const;

Wartość zwracana

Uwagi

CPaneDivider::Init

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

Parametry

[in] bDefaultSlider
[in] PParent

Uwagi

CPaneDivider::InsertPane

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

Parametry

[in] pBarToInsert
[in] pTargetBar
[in] dwAlignment
[in] Lprect

Wartość zwracana

Uwagi

CPaneDivider::IsAutoHideMode

BOOL IsAutoHideMode() const;

Wartość zwracana

Uwagi

CPaneDivider::IsDefault

BOOL IsDefault() const;

Wartość zwracana

Uwagi

CPaneDivider::IsHorizontal

BOOL IsHorizontal() const;

Wartość zwracana

Uwagi

CPaneDivider::m_nDefaultWidth

Określa domyślną szerokość w pikselach wszystkich podziałów okienek w aplikacji.

AFX_IMPORT_DATA static int m_nDefaultWidth;

CPaneDivider::Move

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

Parametry

[in] ptOffset
[in] bAdjustLayout

Uwagi

CPaneDivider::m_pSliderRTC

Zawiera wskaźnik do informacji o klasie środowiska uruchomieniowego dotyczących obiektu pochodnego CPaneDivider.

AFX_IMPORT_DATA static CRuntimeClass* m_pSliderRTC;

Uwagi

Ustaw tę zmienną składową, jeśli tworzysz niestandardowy podział okienka. Dzięki temu platforma może utworzyć podział okienka po narysowanym okienku.

Przykład

W poniższym przykładzie pokazano, jak ustawić zmienną składową m_pSliderRTC :

class CMySplitter : public CPaneDivider
{
...
};

CPaneDivider::m_pSliderRTC = RUNTIME_CLASS(CMySpliter);

CPaneDivider::NotifyAboutRelease

virtual void NotifyAboutRelease();

Uwagi

CPaneDivider::OnShowPane

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

Parametry

[in] Pasek p
[in] bShow

Uwagi

CPaneDivider::ReleaseEmptyPaneContainers

void ReleaseEmptyPaneContainers();

Uwagi

CPaneDivider::RemovePane

virtual void RemovePane(CDockablePane* pBar);

Parametry

[in] Pasek p

Uwagi

CPaneDivider::ReplacePane

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

Parametry

[in] pBarToReplace
[in] pBarToReplaceWith

Wartość zwracana

Uwagi

CPaneDivider::RepositionPanes

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

Parametry

[in] rectNew
[in] hdwp

Uwagi

CPaneDivider::Serialize

void Serialize(CArchive& ar);

Parametry

[in] Ar

Uwagi

CPaneDivider::ShowWindow

void ShowWindow(int nCmdShow);

Parametry

[in] nCmdShow

Uwagi

CPaneDivider::StoreRecentDockSiteInfo

void StoreRecentDockSiteInfo(CDockablePane* pBar);

Parametry

[in] Pasek p

Uwagi

CPaneDivider::StoreRecentTabRelatedInfo

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

Parametry

[in] pDockingBar
[in] Pasek pTabbed

Uwagi

Zobacz też

Wykres hierarchii
Klasy
Klasa CPaneContainerManager
Klasa CPaneContainer
Klasa CDockingManager
Klasa CBasePane