CPaneContainer 클래스
CPaneContainer
클래스는 MFC에서 구현된 도킹 모델의 기본 구성 요소입니다. 이 클래스의 개체는 두 개의 도킹 창 또는 CPaneContainer
의 두 인스턴스에 대한 포인터를 저장합니다. 또한 창(또는 컨테이너)을 구분하는 구분선에 대한 포인터도 저장합니다. 컨테이너 안에 컨테이너를 중첩하면 프레임워크에서 복잡한 도킹 레이아웃을 나타내는 이진 트리를 빌드할 수 있습니다. 이진 트리의 루트는 CPaneContainerManager 개체에 저장됩니다.
더 자세한 내용은 Visual Studio 설치의 VC\atlmfc\src\mfc 폴더에 있는 소스 코드를 참조하세요.
구문
class CPaneContainer : public CObject
멤버
공용 생성자
속성 | 설명 |
---|---|
CPaneContainer::CPaneContainer | 기본 생성자입니다. |
공용 메서드
설명
CPaneContainer
개체는 프레임워크에 의해 자동으로 만들어집니다.
예시
다음 예에서는 CPaneContainer
클래스의 인스턴스를 생성하는 방법을 보여 줍니다. 이 코드 조각은 창 크기 설정 샘플의 일부입니다.
CPaneDialog m_wndDlgBar;
CPaneDivider *pDefaultPaneDivider = m_wndDlgBar.GetDefaultPaneDivider();
if (pDefaultPaneDivider == NULL)
{
AfxMessageBox(_T ("The DialogBar is not docked."));
return;
}
BOOL bLeftBar = FALSE;
CPaneContainer *pContainer = pDefaultPaneDivider->FindPaneContainer(&m_wndDlgBar, bLeftBar);
상속 계층 구조
요구 사항
헤더: afxpanecontainer.h
CPaneContainer::AddPane
CDockablePane* AddPane(CDockablePane* pBar);
매개 변수
[in] pBar
Return Value
설명
CPaneContainer::AddRef
void AddRef();
설명
CPaneContainer::AddSubPaneContainer
BOOL AddSubPaneContainer(
CPaneContainer* pContainer,
BOOL bRightNodeNew);
매개 변수
[in] pContainer
[in] bRightNodeNew
Return Value
설명
CPaneContainer::CalcAvailablePaneSpace
virtual int CalcAvailablePaneSpace(
int nRequiredOffset,
CPane* pBar,
CPaneContainer* pContainer,
BOOL bLeftBar);
매개 변수
[in] nRequiredOffset
[in] pBar
[in] pContainer
[in] bLeftBar
Return Value
설명
CPaneContainer::CalcAvailableSpace
virtual CSize CalcAvailableSpace(
CSize sizeStretch,
BOOL bLeftBar);
매개 변수
[in] sizeStretch
[in] bLeftBar
Return Value
설명
CPaneContainer::CalculateRecentSize
void CalculateRecentSize();
설명
CPaneContainer::CheckPaneDividerVisibility
void CheckPaneDividerVisibility();
설명
CPaneContainer::Copy
virtual CPaneContainer* Copy(CPaneContainer* pParentContainer);
매개 변수
[in] pParentContainer
Return Value
설명
CPaneContainer::CPaneContainer
CPaneContainer(
CPaneContainerManager* pManager = NULL,
CDockablePane* pLeftBar = NULL,
CDockablePane* pRightBar = NULL,
CPaneDivider* pSlider = NULL);
매개 변수
[in] pManager
[in] pLeftBar
[in] pRightBar
[in] pSlider
설명
CPaneContainer::DeletePane
virtual void DeletePane(
CDockablePane* pBar,
BC_FIND_CRITERIA barType);
매개 변수
[in] pBar
[in] barType
설명
CPaneContainer::FindSubPaneContainer
CPaneContainer* FindSubPaneContainer(
const CObject* pObject,
BC_FIND_CRITERIA findCriteria);
매개 변수
[in] pObject
[in] findCriteria
Return Value
설명
CPaneContainer::FindTabbedPane
CDockablePane* FindTabbedPane(UINT nID);
매개 변수
[in] nID
Return Value
설명
CPaneContainer::GetAssociatedSiblingPaneIDs
CList<UINT, UINT>* GetAssociatedSiblingPaneIDs(CDockablePane* pBar);
매개 변수
[in] pBar
Return Value
설명
CPaneContainer::GetLeftPane
const CDockablePane* GetLeftPane() const;
Return Value
설명
CPaneContainer::GetLeftPaneContainer
const CPaneContainer* GetLeftPaneContainer() const;
Return Value
설명
CPaneContainer::GetMinSize
virtual void GetMinSize(CSize& size) const;
매개 변수
[in] size
설명
CPaneContainer::GetMinSizeLeft
virtual void GetMinSizeLeft(CSize& size) const;
매개 변수
[in] size
설명
CPaneContainer::GetMinSizeRight
virtual void GetMinSizeRight(CSize& size) const;
매개 변수
[in] size
설명
CPaneContainer::GetNodeCount
int GetNodeCount() const;
Return Value
설명
CPaneContainer::GetPaneDivider
const CPaneDivider* GetPaneDivider() const;
Return Value
설명
CPaneContainer::GetParentPaneContainer
CPaneContainer* GetParentPaneContainer() const;
Return Value
설명
CPaneContainer::GetRecentPaneDividerRect
CRect GetRecentPaneDividerRect() const;
Return Value
설명
CPaneContainer::GetRecentPaneDividerStyle
DWORD GetRecentPaneDividerStyle() const;
Return Value
설명
CPaneContainer::GetRecentPercent
int GetRecentPercent();
Return Value
설명
CPaneContainer::GetRefCount
LONG GetRefCount();
Return Value
설명
CPaneContainer::GetResizeStep
virtual int GetResizeStep() const;
Return Value
설명
CPaneContainer::GetRightPane
const CDockablePane* GetRightPane() const;
Return Value
설명
CPaneContainer::GetRightPaneContainer
const CPaneContainer* GetRightPaneContainer() const;
Return Value
설명
CPaneContainer::GetTotalReferenceCount
int GetTotalReferenceCount() const;
Return Value
설명
CPaneContainer::GetWindowRect
virtual void GetWindowRect(
CRect& rect,
BOOL bIgnoreVisibility = FALSE) const;
매개 변수
[in] rect
[in] bIgnoreVisibility
설명
CPaneContainer::IsDisposed
BOOL IsDisposed() const;
Return Value
설명
CPaneContainer::IsEmpty
BOOL IsEmpty() const;
Return Value
설명
CPaneContainer::IsLeftPane
BOOL IsLeftPane(CDockablePane* pBar) const;
매개 변수
[in] pBar
Return Value
설명
CPaneContainer::IsLeftPaneContainer
BOOL IsLeftPaneContainer() const;
Return Value
설명
CPaneContainer::IsLeftPartEmpty
BOOL IsLeftPartEmpty(BOOL bCheckVisibility = FALSE) const;
매개 변수
[in] bCheckVisibility
Return Value
설명
CPaneContainer::IsRightPartEmpty
BOOL IsRightPartEmpty(BOOL bCheckVisibility = FALSE) const;
매개 변수
[in] bCheckVisibility
Return Value
설명
CPaneContainer::IsVisible
BOOL IsVisible() const;
Return Value
설명
CPaneContainer::Move
virtual void Move(CPoint ptNewLeftTop);
매개 변수
[in] ptNewLeftTop
설명
CPaneContainer::OnDeleteHidePane
void OnDeleteHidePane(
CDockablePane* pBar,
BOOL bHide);
매개 변수
[in] pBar
[in] bHide
설명
CPaneContainer::OnMoveInternalPaneDivider
virtual int OnMoveInternalPaneDivider(
int nOffset,
HDWP& hdwp);
매개 변수
[in] nOffset
[in] hdwp
Return Value
설명
CPaneContainer::OnShowPane
virtual void OnShowPane(
CDockablePane* pBar,
BOOL bShow);
매개 변수
[in] pBar
[in] bShow
설명
CPaneContainer::Release
DWORD Release();
Return Value
설명
CPaneContainer::ReleaseEmptyPaneContainer
void ReleaseEmptyPaneContainer();
설명
CPaneContainer::RemoveNonValidPanes
void RemoveNonValidPanes();
설명
CPaneContainer::RemovePane
virtual void RemovePane(CDockablePane* pBar);
매개 변수
[in] pBar
설명
CPaneContainer::Resize
virtual void Resize(
CRect rect,
HDWP& hdwp,
BOOL bRedraw = FALSE);
매개 변수
[in] rect
[in] hdwp
[in] bRedraw
설명
CPaneContainer::ResizePane
virtual void ResizePane(
int nOffset,
CPane* pBar,
CPaneContainer* pContainer,
BOOL bHorz,
BOOL bLeftBar,
HDWP& hdwp);
매개 변수
[in] nOffset
[in] pBar
[in] pContainer
[in] bHorz
[in] bLeftBar
[in] hdwp
설명
CPaneContainer::ResizePartOfPaneContainer
virtual void ResizePartOfPaneContainer(
int nOffset,
BOOL bLeftPart,
HDWP& hdwp);
매개 변수
[in] nOffset
[in] bLeftPart
[in] hdwp
설명
CPaneContainer::Serialize
void Serialize(CArchive& ar);
매개 변수
[in] ar
설명
CPaneContainer::SetPane
void SetPane(
CDockablePane* pBar,
BOOL bLeft);
매개 변수
[in] pBar
[in] bLeft
설명
CPaneContainer::SetPaneContainer
void SetPaneContainer(
CPaneContainer* pContainer,
BOOL bLeft);
매개 변수
[in] pContainer
[in] bLeft
설명
CPaneContainer::SetPaneDivider
void SetPaneDivider(CPaneDivider* pSlider);
매개 변수
[in] pSlider
설명
CPaneContainer::SetParentPaneContainer
void SetParentPaneContainer(CPaneContainer* p);
매개 변수
[in] p
설명
CPaneContainer::SetRecentPercent
void SetRecentPercent(int nRecentPercent);
매개 변수
[in] nRecentPercent
설명
CPaneContainer::SetUpByID
BOOL SetUpByID(
UINT nID,
CDockablePane* pBar);
매개 변수
[in] nID
[in] pBar
Return Value
설명
CPaneContainer::StoreRecentDockSiteInfo
virtual void StoreRecentDockSiteInfo(CDockablePane* pBar);
매개 변수
[in] pBar
설명
CPaneContainer::StretchPaneContainer
virtual int StretchPaneContainer(
int nOffset,
BOOL bStretchHorz,
BOOL bLeftBar,
BOOL bMoveSlider,
HDWP& hdwp);
매개 변수
[in] nOffset
[in] bStretchHorz
[in] bLeftBar
[in] bMoveSlider
[in] hdwp