다음을 통해 공유


CPaneDivider 클래스

더 자세한 내용은 Visual Studio 설치의 VC\atlmfc\src\mfc 폴더에 있는 소스 코드를 참조하세요.

클래스는 CPaneDivider 두 개의 창을 나누거나, 두 개의 창 그룹을 나누거나, 창 그룹을 주 프레임 창의 클라이언트 영역과 구분합니다.

구문

class CPaneDivider : public CBasePane

멤버

공용 생성자

속성 설명
CPaneDivider::CPaneDivider

공용 메서드

이름 설명
CPaneDivider::AddPaneContainer
CPaneDivider::AddPane
CPaneDivider::AddRecentPane
CPaneDivider::CalcExpectedDockedRect
CPaneDivider::CalcFixedLayout (재정의 CBasePane::CalcFixedLayout.)
CPaneDivider::CheckVisibility
CPaneDivider::CreateEx (재정의 CBasePane::CreateEx.)
CPaneDivider::D oesAllowDynInsertBefore (재정의 CBasePane::D oesAllowDynInsertBefore.)
CPaneDivider::D oesContainFloatingPane
CPaneDivider::FindPaneContainer
CPaneDivider::FindTabbedPane
CPaneDivider::GetDefaultWidth
CPaneDivider::GetFirstPane
CPaneDivider::GetPaneDividers CPaneContainer 클래스있는 창 구분선 목록을 반환합니다. 이 메서드는 기본 창 구분선에 대해서만 호출해야 합니다.
CPaneDivider::GetPaneDividerStyle
CPaneDivider::GetPanes CPaneContainer 클래스에 있는 창 목록을 반환합니다. 이 메서드는 기본 창 구분선에 대해서만 호출해야 합니다.
CPaneDivider::GetRootContainerRect
CPaneDivider::GetWidth
CPaneDivider::Init
CPaneDivider::InsertPane
CPaneDivider::IsAutoHideMode (재정의 CBasePane::IsAutoHideMode.)
CPaneDivider::IsDefault
CPaneDivider::IsHorizontal (재정의 CBasePane::IsHorizontal.)
CPaneDivider::Move
CPaneDivider::NotifyAboutRelease
CPaneDivider::OnShowPane
CPaneDivider::ReleaseEmptyPaneContainers
CPaneDivider::RemovePane
CPaneDivider::ReplacePane
CPaneDivider::RepositionPanes
CPaneDivider::Serialize ( CBasePane::Serialize을 재정의합니다.)
CPaneDivider::SetAutoHideMode
CPaneDivider::SetPaneContainerManager
CPaneDivider::ShowWindow
CPaneDivider::StoreRecentDockSiteInfo
CPaneDivider::StoreRecentTabRelatedInfo
속성 설명
CPaneDivider::m_nDefaultWidth 애플리케이션에서 모든 창 구분선의 기본 너비를 픽셀 단위로 지정합니다.
CPaneDivider::m_pSliderRTC 파생 개체에 대한 런타임 클래스 정보에 대한 포인터를 보유 CPaneDivider합니다.

설명

프레임워크는 창이 도킹될 때 자동으로 개체를 만듭니다 CPaneDivider .

창 구분선에는 두 가지 유형이 있습니다.

  • 기본 창 구분선은 창 그룹이 주 프레임 창의 측면에 도킹될 때 만들어집니다. 기본 창 구분선은 CPaneContainerManager 클래스에 대한 포인터를 보유하고 창 그룹(예: 창 크기 조정 또는 다른 창 또는 컨테이너 도킹)의 대부분의 작업을 컨테이너 관리자로 리디렉션합니다. 각 도킹 창은 기본 창 구분선에 대한 포인터를 유지 관리합니다.

  • 일반 창 구분선은 컨테이너의 두 창을 나눕니다. 자세한 내용은 CPaneContainer 클래스를 참조 하세요.

예시

다음 예제에서는 CWorkspaceBar 개체에서 CPaneDivider 개체를 가져오는 방법을 보여 줍니다. 이 코드 조각은 MDI 탭 데모 샘플일부입니다.

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

상속 계층 구조

CObject
└ CCmdTarget
└ CWnd
  └ CBasePane
   └ CPaneDivider

요구 사항

헤더: afxPaneDivider.h

CPaneDivider::SetAutoHideMode

void SetAutoHideMode(BOOL bMode);

매개 변수

[in] bMode

설명

CPaneDivider::SetPaneContainerManager

void SetPaneContainerManager(CPaneContainerManager* p);

매개 변수

[in] p

설명

CPaneDivider::AddPane

virtual void AddPane(CDockablePane* pBar);

매개 변수

[in] pBar

설명

CPaneDivider::AddPaneContainer

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

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

매개 변수

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

Return Value

설명

CPaneDivider::AddRecentPane

virtual CDockablePane* AddRecentPane(CDockablePane* pBar);

매개 변수

[in] pBar

Return Value

설명

CPaneDivider::CalcExpectedDockedRect

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

매개 변수

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

설명

CPaneDivider::CalcFixedLayout

virtual CSize CalcFixedLayout(
    BOOL bStretch,
    BOOL bHorz);

매개 변수

[in] bStretch
[in] bHorz

Return Value

설명

CPaneDivider::CheckVisibility

virtual BOOL CheckVisibility();

Return Value

설명

CPaneDivider::CPaneDivider

CPaneDivider();

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

매개 변수

[in] bDefaultSlider
[in] pParent

Return Value

설명

CPaneDivider::CreateEx

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

매개 변수

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

Return Value

설명

CPaneDivider::D oesAllowDynInsertBefore

virtual BOOL DoesAllowDynInsertBefore() const;

Return Value

설명

CPaneDivider::D oesContainFloatingPane

virtual BOOL DoesContainFloatingPane();

Return Value

설명

CPaneDivider::FindPaneContainer

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

매개 변수

[in] pBar
[in] bLeftBar

Return Value

설명

CPaneDivider::FindTabbedPane

CDockablePane* FindTabbedPane(UINT nID);

매개 변수

[in] nID

Return Value

설명

CPaneDivider::GetDefaultWidth

static int __stdcall GetDefaultWidth();

Return Value

설명

CPaneDivider::GetFirstPane

const CBasePane* GetFirstPane() const;

Return Value

설명

CPaneDivider::GetPaneDividers

CPaneContainer 클래스있는 창 구분선 목록을 반환합니다. 이 메서드는 기본 창 구분선에 대해서만 호출해야 합니다.

void GetPaneDividers(CObList& lstSliders);

매개 변수

lstSliders
[out] 창 컨테이너에 있는 창 구분선 목록을 포함합니다.

설명

기본 창 구분선에 대해서만 이 메서드를 호출해야 합니다. 기본 창 구분선은 전체 창 컨테이너의 크기를 조정하는 구분선입니다.

CPaneDivider::GetPaneDividerStyle

DWORD GetPaneDividerStyle() const;

Return Value

설명

CPaneDivider::GetPanes

CPaneContainer 클래스에 있는 창 목록을 반환합니다. 이 메서드는 기본 창 나누기를 검색하기 위해서만 호출해야 합니다.

void GetPanes(CObList& lstBars);

매개 변수

lstBars
[out] 창 컨테이너에 있는 창 목록을 포함합니다.

설명

기본 창 구분선에 대해서만 이 메서드를 호출해야 합니다. 기본 창 구분선은 전체 창 컨테이너의 크기를 조정하는 구분선입니다.

CPaneDivider::GetRootContainerRect

CRect GetRootContainerRect();

Return Value

설명

CPaneDivider::GetWidth

int GetWidth() const;

Return Value

설명

CPaneDivider::Init

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

매개 변수

[in] bDefaultSlider
[in] pParent

설명

CPaneDivider::InsertPane

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

매개 변수

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

Return Value

설명

CPaneDivider::IsAutoHideMode

BOOL IsAutoHideMode() const;

Return Value

설명

CPaneDivider::IsDefault

BOOL IsDefault() const;

Return Value

설명

CPaneDivider::IsHorizontal

BOOL IsHorizontal() const;

Return Value

설명

CPaneDivider::m_nDefaultWidth

애플리케이션의 모든 창 구분선의 기본 너비(픽셀)를 지정합니다.

AFX_IMPORT_DATA static int m_nDefaultWidth;

CPaneDivider::Move

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

매개 변수

[in] ptOffset
[in] bAdjustLayout

설명

CPaneDivider::m_pSliderRTC

파생 개체에 대한 런타임 클래스 정보에 대한 포인터를 보유 CPaneDivider합니다.

AFX_IMPORT_DATA static CRuntimeClass* m_pSliderRTC;

설명

사용자 지정 창 나누기를 만드는 경우 이 멤버 변수를 설정합니다. 이렇게 하면 창이 그려질 때 프레임워크에서 창 구분선을 만들 수 있습니다.

예시

다음 예제에서는 멤버 변수를 m_pSliderRTC 설정하는 방법을 보여줍니다.

class CMySplitter : public CPaneDivider
{
...
};

CPaneDivider::m_pSliderRTC = RUNTIME_CLASS(CMySpliter);

CPaneDivider::NotifyAboutRelease

virtual void NotifyAboutRelease();

설명

CPaneDivider::OnShowPane

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

매개 변수

[in] pBar
[in] bShow

설명

CPaneDivider::ReleaseEmptyPaneContainers

void ReleaseEmptyPaneContainers();

설명

CPaneDivider::RemovePane

virtual void RemovePane(CDockablePane* pBar);

매개 변수

[in] pBar

설명

CPaneDivider::ReplacePane

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

매개 변수

[in] pBarToReplace
[in] pBarToReplaceWith

Return Value

설명

CPaneDivider::RepositionPanes

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

매개 변수

[in] rectNew
[in] hdwp

설명

CPaneDivider::Serialize

void Serialize(CArchive& ar);

매개 변수

[in] ar

설명

CPaneDivider::ShowWindow

void ShowWindow(int nCmdShow);

매개 변수

[in] nCmdShow

설명

CPaneDivider::StoreRecentDockSiteInfo

void StoreRecentDockSiteInfo(CDockablePane* pBar);

매개 변수

[in] pBar

설명

CPaneDivider::StoreRecentTabRelatedInfo

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

매개 변수

[in] pDockingBar
[in] pTabbedBar

설명

참고 항목

계층 구조 차트
클래스
CPaneContainerManager 클래스
CPaneContainer 클래스
CDockingManager 클래스
CBasePane 클래스