CDockablePane
클래스
도킹 사이트에 도킹하거나 탭 창에 포함할 수 있는 창을 구현합니다.
통사론
class CDockablePane : public CPane
회원
공용 생성자
이름 | 묘사 |
---|---|
CDockablePane::CDockablePane |
CDockablePane 개체를 생성하고 초기화합니다. |
Public 메서드
이름 | 묘사 |
---|---|
CDockablePane::AttachToTabWnd |
창을 다른 창에 연결합니다. 그러면 탭 창이 만들어집니다. |
CDockablePane::CalcFixedLayout |
창 사각형의 크기를 반환합니다. |
CDockablePane::CanAcceptMiniFrame |
지정된 미니 프레임을 창에 도킹할 수 있는지 여부를 결정합니다. |
CDockablePane::CanAcceptPane |
다른 창을 현재 창에 도킹할 수 있는지 여부를 결정합니다. |
CDockablePane::CanAutoHide |
창에서 자동 숨기기 모드를 지원하는지 여부를 결정합니다. (CBasePane::CanAutoHide 재정의) |
CDockablePane::CanBeAttached |
현재 창을 다른 창에 도킹할 수 있는지 여부를 결정합니다. |
CDockablePane::ConvertToTabbedDocument |
하나 이상의 도킹 가능한 창을 MDI 탭 문서로 변환합니다. |
CDockablePane::CopyState |
도킹 가능한 창의 상태를 복사합니다. |
CDockablePane::Create |
Windows 컨트롤을 만들고 CDockablePane 개체에 연결합니다. |
CDockablePane::CreateDefaultPaneDivider |
틀 창에 도킹할 때 창의 기본 구분선이 만들어집니다. |
CDockablePane::CreateEx |
Windows 컨트롤을 만들고 CDockablePane 개체에 연결합니다. |
CDockablePane::CreateTabbedPane |
현재 창에서 탭 창을 만듭니다. |
CDockablePane::DockPaneContainer |
컨테이너를 창에 도킹합니다. |
CDockablePane::DockPaneStandard |
개요(표준) 도킹을 사용하여 창을 도킹합니다. |
CDockablePane::DockToFrameWindow |
내부적으로 사용됩니다. 창을 도킹하려면 CPane::DockPane 사용하거나 CDockablePane::DockToWindow . |
CDockablePane::DockToRecentPos |
저장된 최근 도킹 위치에 창을 도킹합니다. |
CDockablePane::DockToWindow |
한 도킹 창을 다른 도킹 창에 도킹합니다. |
CDockablePane::EnableAutohideAll |
컨테이너의 다른 창과 함께 이 창에 대한 자동 숨기기 모드를 사용하거나 사용하지 않도록 설정합니다. |
CDockablePane::EnableGripper |
캡션(그리퍼)을 표시하거나 숨깁니다. |
CDockablePane::GetAHRestoredRect |
자동 숨기기 모드에서 표시할 때 창의 위치를 지정합니다. |
CDockablePane::GetAHSlideMode |
창의 자동 숨기기 슬라이드 모드를 검색합니다. |
CDockablePane::GetAutoHideButton |
내부적으로 사용됩니다. |
CDockablePane::GetAutoHideToolBar |
내부적으로 사용됩니다. |
CDockablePane::GetCaptionHeight |
현재 캡션의 높이를 반환합니다. |
CDockablePane::GetDefaultPaneDivider |
창 컨테이너의 기본 창 나누기를 반환합니다. |
CDockablePane::GetDockingStatus |
제공된 포인터 위치에 따라 창이 도킹되는 기능을 결정합니다. |
CDockablePane::GetDragSensitivity |
도킹 창의 끌기 민감도를 반환합니다. |
CDockablePane::GetLastPercentInPaneContainer |
창이 컨테이너 내에서 차지하는 공간의 백분율을 검색합니다. |
CDockablePane::GetTabArea |
창의 탭 영역을 검색합니다. |
CDockablePane::GetTabbedPaneRTC |
다른 창이 현재 창에 도킹될 때 만들어지는 탭 창에 대한 런타임 클래스 정보를 반환합니다. |
CDockablePane::HasAutoHideMode |
도킹 창을 자동 숨기기 모드로 전환할 수 있는지 여부를 지정합니다. |
CDockablePane::HitTest |
사용자가 마우스를 클릭하는 창의 특정 위치를 지정합니다. |
CDockablePane::IsAccessibilityCompatible |
내부적으로 사용됩니다. |
CDockablePane::IsAutohideAllEnabled |
컨테이너의 도킹 창과 다른 모든 창을 자동 숨기기 모드로 배치할 수 있는지 여부를 나타냅니다. |
CDockablePane::IsAutoHideMode |
창이 자동 숨기기 모드인지 여부를 확인합니다. |
CDockablePane::IsChangeState |
내부적으로 사용됩니다. |
CDockablePane::IsDocked |
현재 창이 도킹되었는지 여부를 확인합니다. |
CDockablePane::IsHideInAutoHideMode |
ShowPane 호출하여 표시되거나 숨겨진 경우 자동 숨기기 모드에 있는 창의 동작을 결정합니다. |
CDockablePane::IsInFloatingMultiPaneFrameWnd |
창이 다중 창 프레임 창에 있는지 여부를 지정합니다. |
CDockablePane::IsResizable |
창의 크기 조정 가능 여부를 지정합니다. |
CDockablePane::IsTabLocationBottom |
탭이 창의 위쪽 또는 아래쪽에 있는지 여부를 지정합니다. |
CDockablePane::IsTracked |
사용자가 창을 끌지 여부를 지정합니다. |
CDockablePane::IsVisible |
현재 창이 표시되는지 여부를 확인합니다. |
CDockablePane::LoadState |
내부적으로 사용됩니다. |
CDockablePane::OnAfterChangeParent |
창의 부모가 변경될 때 프레임워크에서 호출됩니다. (CPane::OnAfterChangeParent 재정의) |
CDockablePane::OnAfterDockFromMiniFrame |
부동 도킹 막대가 프레임 창에 도킹되면 프레임워크에서 호출됩니다. |
CDockablePane::OnBeforeChangeParent |
창의 부모가 변경하려고 할 때 프레임워크에서 호출됩니다. (CPane::OnBeforeChangeParent 재정의) |
CDockablePane::OnBeforeFloat |
창이 부동하려고 할 때 프레임워크에서 호출됩니다. (CPane::OnBeforeFloat 재정의) |
CDockablePane::RemoveFromDefaultPaneDividier |
프레임워크는 창이 도킹 취소될 때 이 메서드를 호출합니다. |
CDockablePane::ReplacePane |
창을 지정된 창으로 바꿉니다. |
CDockablePane::RestoreDefaultPaneDivider |
프레임워크는 이 메서드를 기본 창 나누기를 복원하기 위해 창이 역직렬화되어 있다고 호출합니다. |
CDockablePane::SaveState |
내부적으로 사용됩니다. |
CDockablePane::Serialize |
창을 직렬화합니다. (CBasePane::Serialize 재정의) |
CDockablePane::SetAutoHideMode |
도킹 창을 표시 모드와 자동 숨기기 모드 간에 전환합니다. |
CDockablePane::SetAutoHideParents |
창의 자동 숨기기 단추와 자동 숨기기 도구 모음을 설정합니다. |
CDockablePane::SetDefaultPaneDivider |
내부적으로 사용됩니다. |
CDockablePane::SetLastPercentInPaneContainer |
창이 컨테이너 내에서 차지하는 공간의 백분율을 설정합니다. |
CDockablePane::SetResizeMode |
내부적으로 사용됩니다. |
CDockablePane::SetRestoredDefaultPaneDivider |
복원된 기본 창 나누기를 설정합니다. |
CDockablePane::SetTabbedPaneRTC |
두 창이 함께 도킹될 때 만들어지는 탭 창에 대한 런타임 클래스 정보를 설정합니다. |
CDockablePane::ShowPane |
창을 표시하거나 숨깁니다. |
CDockablePane::Slide |
창이 자동 숨기기 모드인 경우에만 표시되는 슬라이딩 애니메이션이 있는 창을 표시하거나 숨깁니다. |
CDockablePane::ToggleAutoHide |
자동 숨기기 모드를 전환합니다. (CPane::ToggleAutoHide 재정의합니다.) |
CDockablePane::UndockPane |
주 프레임 창 또는 미니프레임 창 컨테이너에서 창을 도킹 해제합니다. |
CDockablePane::UnSetAutoHideMode |
내부적으로 사용됩니다. 자동 숨기기 모드를 설정하려면 CDockablePane::SetAutoHideMode |
보호된 메서드
이름 | 묘사 |
---|---|
CDockablePane::CheckAutoHideCondition |
도킹 창이 숨겨지는지 여부를 결정합니다(자동 숨기기 모드). |
CDockablePane::CheckStopSlideCondition |
자동 숨기기 도킹 창이 슬라이딩을 중지해야 하는 시기를 결정합니다. |
CDockablePane::DrawCaption |
도킹 창 캡션(그리기)을 그립니다. |
CDockablePane::OnPressButtons |
사용자가 AFX_HTCLOSE 및 AFX_HTMAXBUTTON 단추 이외의 캡션 단추를 누를 때 호출됩니다. |
CDockablePane::OnSlide |
창이 표시되거나 숨겨질 때 자동 숨기기 슬라이드 효과를 렌더링하기 위해 프레임워크에서 호출됩니다. |
데이터 멤버
이름 | 묘사 |
---|---|
CDockablePane::m_bDisableAnimation |
도킹 가능한 창의 자동 숨기기 애니메이션을 사용하지 않도록 설정할지 여부를 지정합니다. |
CDockablePane::m_bHideInAutoHideMode |
창이 자동 숨기기 모드일 때 창의 동작을 결정합니다. |
CDockablePane::m_nSlideSteps |
자동 숨기기 모드에서 창이 표시되거나 숨겨질 때 창의 애니메이션 속도를 지정합니다. |
발언
CDockablePane
다음 기능을 구현합니다.
창을 주 프레임 창에 도킹합니다.
창을 자동 숨기기 모드로 전환
탭 창에 창 연결
미니프레임 창에 창 부동
미니프레임 창에 떠 있는 다른 창에 창을 도킹합니다.
창 크기 조정
도킹 창에 대한 상태 로드 및 저장
메모
상태 정보는 Windows 레지스트리에 저장됩니다.
캡션을 사용하거나 사용하지 않고 창을 만듭니다. 캡션에는 텍스트 레이블이 있을 수 있으며 그라데이션 색으로 채울 수 있습니다.
창의 내용을 표시하는 동안 창 끌기
끌어서 직사각형을 표시하는 동안 창을 끌어다 옵니다.
애플리케이션에서 도킹 창을 사용하려면 CDockablePane
클래스에서 창 클래스를 파생합니다. 파생 개체를 주 프레임 창 개체에 포함하거나 창의 인스턴스를 제어하는 창 개체에 포함합니다. 그런 다음 주 프레임 창에서 WM_CREATE
메시지를 처리할 때 CDockablePane::Create
메서드 또는 CDockablePane::CreateEx
메서드를 호출합니다. 마지막으로 CBasePane::EnableDocking
, CBasePane::DockPane
또는 CDockablePane::AttachToTabWnd
호출하여 창 개체를 설정합니다.
사용자 지정 팁
다음 팁은 CDockablePane
개체에 적용됩니다.
탭이 없는 도킹 가능한 두 창에 대해
CDockablePane::AttachToTabWnd
호출하는 경우 탭 창에 대한 포인터가ppTabbedControlBar
매개 변수에 반환됩니다. 이 매개 변수를 사용하여 탭 창에 탭을 계속 추가할 수 있습니다.CDockablePane::AttachToTabWnd
만든 탭 창의 종류는pTabControlBarAttachTo
매개 변수의CDockablePane
개체에 의해 결정됩니다.CDockablePane::SetTabbedPaneRTC
호출하여CDockablePane
만들 탭 창의 종류를 설정할 수 있습니다. 기본 형식은CDockablePane
처음 만들 때CDockablePane::Create
dwTabbedStyle
따라 결정됩니다.dwTabbedStyle
AFX_CBRS_OUTLOOK_TABS
경우 기본 형식은CMFCOutlookBar
클래스;dwTabbedStyle
AFX_CBRS_REGULAR_TABS
기본 형식이CTabbedPane
클래스.도킹 가능한 창을 다른 창에 도킹하려면
CDockablePane::DockToWindow
메서드를 호출합니다. 이 메서드를 호출하기 전에 원래 창이 어딘가에 도킹되어야 합니다.멤버 변수
CDockablePane::m_bHideInAutoHideMode
CDockablePane::ShowPane
호출할 때 도킹 가능한 창이 자동 숨기기 모드에서 동작하는 방식을 제어합니다. 이 멤버 변수가TRUE
설정되면 도킹 가능한 창과 자동 숨기기 단추가 숨겨집니다. 그렇지 않으면 슬라이드 내부 및 외부로 이동합니다.CDockablePane::m_bDisableAnimation
멤버 변수를TRUE
설정하여 자동 숨기기 애니메이션을 사용하지 않도록 설정할 수 있습니다.
본보기
다음 예제에서는 CDockablePane
클래스의 다양한 메서드를 사용하여 CDockablePane
개체를 구성하는 방법을 보여 줍니다. 이 예제에서는 도킹 가능한 창에 대해 모든 기능을 자동으로 숨기고, 캡션 또는 그리퍼를 사용하도록 설정하고, 자동 숨기기 모드를 사용하도록 설정하고, 창을 표시하고, 자동 숨기기 모드에 있는 창에 애니메이션 효과를 주는 방법을 보여 줍니다. 이 코드 조각은 Visual Studio 데모 샘플일부입니다.
// GetOwner is an inherited method.
CDockablePane *pParentBar = DYNAMIC_DOWNCAST(CDockablePane, GetOwner());
pParentBar->EnableAutohideAll();
pParentBar->EnableGripper(true);
pParentBar->SetAutoHideMode(true, CBRS_ALIGN_LEFT);
pParentBar->ShowPane(true, false, true);
pParentBar->Slide(true);
상속 계층 구조
요구 사항
헤더:afxDockablePane.h
CDockablePane::AttachToTabWnd
현재 창을 대상 창에 연결하여 탭 창을 만듭니다.
virtual CDockablePane* AttachToTabWnd(
CDockablePane* pTabControlBarAttachTo,
AFX_DOCK_METHOD dockMethod,
BOOL bSetActive= TRUE,
CDockablePane** ppTabbedControlBar = NULL);
매개 변수
pTabControlBarAttachTo
[in, out] 현재 창이 연결하는 대상 창을 지정합니다. 대상 창은 도킹 가능한 창이어야 합니다.
dockMethod
[in] 도킹 메서드를 지정합니다.
bSetActive
[in] 연결 작업 후 탭 창을 활성화하는 TRUE
. 그렇지 않으면 FALSE
.
ppTabbedControlBar
[out] 연결 작업으로 인한 탭 창을 포함합니다.
반환 값
탭 창이 아닌 경우 현재 창에 대한 포인터입니다. 그렇지 않으면 연결 작업으로 인한 탭 창에 대한 포인터입니다. 현재 창을 연결할 수 없거나 오류가 발생하는 경우 반환 값이 NULL
.
발언
이 메서드를 사용하여 하나의 도킹 가능한 창이 다른 창에 연결되면 다음이 발생합니다.
프레임워크는
pTabControlBarAttachTo
대상 창이 일반 도킹 창인지 또는CBaseTabbedPane
파생되었는지 확인합니다.대상 창이 탭 창인 경우 프레임워크는 현재 창을 탭으로 추가합니다.
대상 창이 일반 도킹 창인 경우 프레임워크는 탭 창을 만듭니다.
프레임워크는
pTabControlBarAttachTo->CreateTabbedPane
호출합니다. 새 탭 창의 스타일은m_pTabbedControlBarRTC
멤버에 따라 달라집니다. 기본적으로 이 멤버는CTabbedPane
런타임 클래스로 설정됩니다.AFX_CBRS_OUTLOOK_TABS
스타일을dwTabbedStyle
매개 변수로CDockablePane::Create
메서드에 전달하면 런타임 클래스 개체가CMFCOutlookBar
런타임 클래스로 설정됩니다. 언제든지 이 멤버를 변경하여 새 창의 스타일을 변경할 수 있습니다.이 메서드가 탭 창을 만들 때 프레임워크는
pTabControlBarAttachTo
대한 포인터를 새 탭 창에 대한 포인터로 바꿉니다(창이 도킹되거나 다중 미니프레임 창에 부동하는 경우).프레임워크는 탭 창에
pTabControlBarAttachTo
창을 첫 번째 탭으로 추가합니다. 그런 다음 프레임워크는 현재 창을 두 번째 탭으로 추가합니다.
현재 창이
CBaseTabbedPane
파생된 경우 모든 탭이pTabControlBarAttachTo
이동되고 현재 창이 제거됩니다. 따라서 현재 창에 대한 포인터가 메서드가 반환될 때 유효하지 않을 수 있으므로 이 메서드를 호출할 때는 주의해야 합니다.
도킹 레이아웃을 빌드할 때 한 창을 다른 창에 연결하는 경우 dockMethod
DM_SHOW
설정합니다.
다른 창을 연결하기 전에 첫 번째 창을 도킹해야 합니다.
CDockablePane::CalcFixedLayout
창 사각형의 크기를 반환합니다.
virtual CSize CalcFixedLayout(
BOOL bStretch,
BOOL bHorz);
매개 변수
bStretch
[in] 사용되지 않습니다.
bHorz
[in] 사용되지 않습니다.
반환 값
창 사각형의 크기를 포함하는 CSize
개체입니다.
CDockablePane::CanAcceptMiniFrame
지정된 미니 프레임을 창에 도킹할 수 있는지 여부를 결정합니다.
virtual BOOL CanAcceptMiniFrame(CPaneFrameWnd* pMiniFrame) const;
매개 변수
pMiniFrame
[in] CPaneFrameWnd
개체에 대한 포인터입니다.
반환 값
pMiniFrame
창에 도킹할 수 있는지 TRUE
. 그렇지 않으면 FALSE
.
CDockablePane::CanAcceptPane
다른 창을 현재 창에 도킹할 수 있는지 여부를 결정합니다.
virtual BOOL CanAcceptPane(const CBasePane* pBar) const;
매개 변수
pBar
[in] 현재 창에 도킹할 창을 지정합니다.
반환 값
지정된 창을 이 창에 도킹할 수 있는지 TRUE
. 그렇지 않으면 FALSE
.
발언
프레임워크는 창이 현재 창에 도킹되기 전에 이 메서드를 호출합니다.
특정 창에 도킹을 사용하거나 사용하지 않도록 설정하려면 파생 클래스에서 이 함수를 재정의합니다.
기본적으로 이 메서드는 pBar
부모 형식이 CDockablePane
경우 TRUE
반환합니다.
CDockablePane::CanAutoHide
창이 자동으로 숨겨질 수 있는지 여부를 결정합니다.
virtual BOOL CanAutoHide() const;
반환 값
창이 자동으로 숨겨질 수 있는지 TRUE
. 그렇지 않으면 FALSE
.
발언
CDockablePane::CanAutoHide
다음 상황에서 FALSE
반환합니다.
창에 부모가 없습니다.
도킹 관리자는 창을 자동으로 숨기는 것을 허용하지 않습니다.
창이 도킹되지 않습니다.
CDockablePane::CanBeAttached
현재 창을 다른 창에 도킹할 수 있는지 여부를 결정합니다.
virtual BOOL CanBeAttached() const;
반환 값
도킹 가능한 창을 다른 창이나 주 프레임 창에 도킹할 수 있는지 TRUE
. 그렇지 않으면 FALSE
.
발언
기본적으로 이 메서드는 항상 TRUE
반환합니다. 파생 클래스에서 이 메서드를 재정의하여 CBasePane::EnableDocking
호출하지 않고 도킹을 사용하거나 사용하지 않도록 설정합니다.
CDockablePane::CDockablePane
CDockablePane
개체를 생성하고 초기화합니다.
CDockablePane();
발언
도킹 가능한 창 개체를 생성한 후 CDockablePane::Create
호출하거나 CDockablePane::CreateEx
호출하여 만듭니다.
CDockablePane::ConvertToTabbedDocument
하나 이상의 도킹 가능한 창을 MDI 탭 문서로 변환합니다.
virtual void ConvertToTabbedDocument(BOOL bActiveTabOnly = TRUE);
매개 변수
bActiveTabOnly
[in] CTabbedPane
변환할 때 TRUE
지정하여 현재 탭만 변환합니다. 창의 모든 탭을 변환하려면 FALSE
지정합니다.
CDockablePane::CheckAutoHideCondition
도킹 창이 숨겨져 있는지 여부를 확인합니다(자동 숨기기 모드라고도 함).
virtual BOOL CheckAutoHideCondition();
반환 값
숨기기 조건이 충족되는지 TRUE
. 그렇지 않으면 FALSE
.
발언
프레임워크는 타이머를 사용하여 자동 숨기기 도킹 가능 창을 숨길지 여부를 주기적으로 확인합니다. 이 메서드는 창이 활성화되지 않고, 창의 크기가 조정되지 않고, 마우스 포인터가 창 위에 있지 않으면 TRUE
반환합니다.
이전 조건이 모두 충족되면 프레임워크는 CDockablePane::Slide
호출하여 창을 숨깁니다.
CDockablePane::CheckStopSlideCondition
자동 숨기기 도킹 창이 슬라이딩을 중지해야 하는 시기를 결정합니다.
virtual BOOL CheckStopSlideCondition(BOOL bDirection);
매개 변수
bDirection
[in] 창이 표시되는지 TRUE
. 창이 숨겨져 있는지 FALSE
.
반환 값
중지 조건이 충족되는지 TRUE
. 그렇지 않으면 FALSE
.
발언
도킹 가능한 창이 자동 숨기기 모드로 설정된 경우 프레임워크는 슬라이딩 효과를 사용하여 창을 표시하거나 숨깁니다. 프레임워크는 창이 슬라이딩되는 경우 이 함수를 호출합니다.
CheckStopSlideCondition
창이 완전히 표시되거나 완전히 숨겨지면 TRUE
반환합니다.
파생 클래스에서 이 메서드를 재정의하여 사용자 지정 자동 숨기기 효과를 구현합니다.
CDockablePane::CopyState
도킹 가능한 창의 상태를 복사합니다.
virtual void CopyState(CDockablePane* pOrgBar);
매개 변수
pOrgBar
[in] 도킹 가능한 창에 대한 포인터입니다.
발언
CDockablePane::CopyState
다음 메서드를 호출하여 pOrgBar
상태를 현재 창에 복사합니다.
CDockablePane::Create
Windows 컨트롤을 만들고 CDockablePane
개체에 연결합니다.
virtual BOOL Create(
LPCTSTR lpszCaption,
CWnd* pParentWnd,
const RECT& rect,
BOOL bHasGripper,
UINT nID,
DWORD dwStyle,
DWORD dwTabbedStyle = AFX_CBRS_REGULAR_TABS,
DWORD dwControlBarStyle = AFX_DEFAULT_DOCKING_PANE_STYLE,
CCreateContext* pContext = NULL);
virtual BOOL Create(
LPCTSTR lpszWindowName,
CWnd* pParentWnd,
CSize sizeDefault,
BOOL bHasGripper,
UINT nID,
DWORD dwStyle = WS_CHILD|WS_VISIBLE|CBRS_TOP|CBRS_HIDE_INPLACE,
DWORD dwTabbedStyle = AFX_CBRS_REGULAR_TABS,
DWORD dwControlBarStyle = AFX_DEFAULT_DOCKING_PANE_STYLE);
매개 변수
lpszCaption
[in] 창 이름을 지정합니다.
pParentWnd
[in, out] 부모 창을 지정합니다.
rect
[in] pParentWnd
클라이언트 좌표에서 창의 크기와 위치를 지정합니다.
bHasGripper
[in] 캡션이 있는 창을 만드는 TRUE
. 그렇지 않으면 FALSE
.
nID
[in] 자식 창의 ID를 지정합니다. 이 도킹 창의 도킹 상태를 저장하려면 이 값이 고유해야 합니다.
dwStyle
[in] 창 스타일 특성을 지정합니다.
dwTabbedStyle
[in] 사용자가 이 창의 캡션에서 창을 끌 때 만들어지는 탭 창의 탭 스타일을 지정합니다.
dwControlBarStyle
[in] 추가 스타일 특성을 지정합니다.
pContext
[in, out] 창의 만들기 컨텍스트를 지정합니다.
lpszWindowName
[in] 창 이름을 지정합니다.
sizeDefault
[in] 창의 크기를 지정합니다.
반환 값
도킹 가능한 창이 성공적으로 만들어졌는지 TRUE
. 그렇지 않으면 FALSE
.
발언
Windows 창을 만들어 CDockablePane
개체에 연결합니다.
dwStyle
창 스타일에 CBRS_FLOAT_MULTI
플래그가 있는 경우 미니프레임 창은 미니프레임 창의 다른 창과 함께 부동할 수 있습니다. 기본적으로 도킹 창은 개별적으로만 부동할 수 있습니다.
dwTabbedStyle
매개 변수에 AFX_CBRS_OUTLOOK_TABS
플래그가 지정된 경우 CDockablePane::AttachToTabWnd
메서드를 사용하여 다른 창이 이 창에 연결되면 창에서 Outlook 스타일 탭 창을 만듭니다. 기본적으로 도킹 가능한 창은 CTabbedPane
형식의 일반 탭 창을 만듭니다.
CDockablePane::CreateDefaultPaneDivider
틀 창에 도킹할 때 창의 기본 구분선이 만들어집니다.
static CPaneDivider* __stdcall CreateDefaultPaneDivider(
DWORD dwAlignment,
CWnd* pParent,
CRuntimeClass* pSliderRTC = NULL);
매개 변수
dwAlignment
[in] 창이 도킹되는 주 프레임의 측면을 지정합니다.
dwAlignment
CBRS_ALIGN_LEFT
또는 CBRS_ALIGN_RIGHT
플래그를 포함하는 경우 이 메서드는 세로(CPaneDivider::SS_VERT
) 구분자를 만듭니다. 그렇지 않으면 이 메서드는 가로(CPaneDivider::SS_HORZ
) 구분자를 만듭니다.
pParent
[in] 부모 프레임에 대한 포인터입니다.
pSliderRTC
[in] 사용되지 않습니다.
반환 값
이 메서드는 새로 만든 구분선에 대한 포인터를 반환하거나, 나누기 만들기가 실패하면 NULL
.
발언
dwAlignment
다음 값 중 어느 것이든 될 수 있습니다.
값 | 묘사 |
---|---|
CBRS_ALIGN_TOP |
창이 프레임 창의 클라이언트 영역 맨 위에 도킹되고 있습니다. |
CBRS_ALIGN_BOTTOM |
창이 프레임 창의 클라이언트 영역 아래쪽에 도킹되고 있습니다. |
CBRS_ALIGN_LEFT |
창이 프레임 창의 클라이언트 영역 왼쪽에 도킹되고 있습니다. |
CBRS_ALIGN_RIGHT |
창이 프레임 창의 클라이언트 영역 오른쪽에 도킹되고 있습니다. |
CDockablePane::CreateEx
Windows 컨트롤을 만들고 CDockablePane
개체에 연결합니다.
virtual BOOL CreateEx(
DWORD dwStyleEx,
LPCTSTR lpszCaption,
CWnd* pParentWnd,
const RECT& rect,
BOOL bHasGripper,
UINT nID,
DWORD dwStyle,
DWORD dwTabbedStyle = AFX_CBRS_REGULAR_TABS,
DWORD dwControlBarStyle = AFX_DEFAULT_DOCKING_PANE_STYLE,
CCreateContext* pContext = NULL);
매개 변수
dwStyleEx
[in] 새 창의 확장 스타일 특성을 지정합니다.
lpszCaption
[in] 창 이름을 지정합니다.
pParentWnd
[in, out] 부모 창을 지정합니다.
rect
[in] pParentWnd
클라이언트 좌표에서 창의 크기와 위치를 지정합니다.
bHasGripper
[in] 캡션이 있는 창을 만드는 TRUE
. 그렇지 않으면 FALSE
.
nID
[in] 자식 창의 ID를 지정합니다. 이 도킹 창의 도킹 상태를 저장하려면 이 값이 고유해야 합니다.
dwStyle
[in] 창 스타일 특성을 지정합니다.
dwTabbedStyle
[in] 사용자가 이 창의 캡션에서 창을 끌 때 만들어지는 탭 창의 탭 스타일을 지정합니다.
dwControlBarStyle
[in] 추가 스타일 특성을 지정합니다.
pContext
[in, out] 창의 만들기 컨텍스트를 지정합니다.
반환 값
도킹 가능한 창이 성공적으로 만들어졌는지 TRUE
. 그렇지 않으면 FALSE
.
발언
Windows 창을 만들어 CDockablePane
개체에 연결합니다.
dwStyle
창 스타일에 CBRS_FLOAT_MULTI
플래그가 있는 경우 미니프레임 창은 미니프레임 창의 다른 창과 함께 부동할 수 있습니다. 기본적으로 도킹 창은 개별적으로만 부동할 수 있습니다.
dwTabbedStyle
매개 변수에 AFX_CBRS_OUTLOOK_TABS
플래그가 지정된 경우 CDockablePane::AttachToTabWnd
메서드를 사용하여 다른 창이 이 창에 연결되면 창에서 Outlook 스타일 탭 창을 만듭니다. 기본적으로 도킹 가능한 창은 CTabbedPane
형식의 일반 탭 창을 만듭니다.
CDockablePane::CreateTabbedPane
현재 창에서 탭 창을 만듭니다.
virtual CTabbedPane* CreateTabbedPane();
반환 값
새 탭 창 또는 만들기 작업이 실패한 경우 NULL
.
발언
프레임워크는 이 창을 바꾸기 위해 탭 창을 만들 때 이 메서드를 호출합니다. 자세한 내용은 CDockablePane::AttachToTabWnd
참조하세요.
탭 창을 만들고 초기화하는 방법을 사용자 지정하려면 파생 클래스에서 이 메서드를 재정의합니다.
탭 창은 CDockablePane::CreateEx
메서드에 의해 초기화된 m_pTabbedControlBarRTC
멤버에 저장된 런타임 클래스 정보에 따라 만들어집니다.
CDockablePane::DockPaneContainer
컨테이너를 창에 도킹합니다.
virtual BOOL DockPaneContainer(
CPaneContainerManager& barContainerManager,
DWORD dwAlignment,
AFX_DOCK_METHOD dockMethod);
매개 변수
barContainerManager
[in] 도킹 중인 컨테이너의 컨테이너 관리자에 대한 참조입니다.
dwAlignment
[in] 컨테이너가 도킹되는 창의 측면을 지정하는 DWORD
.
dockMethod
[in] 사용되지 않습니다.
반환 값
컨테이너가 창에 성공적으로 도킹되었는지 TRUE
. 그렇지 않으면 FALSE
.
발언
dwAlignment
다음 값 중 어느 것이든 될 수 있습니다.
값 | 묘사 |
---|---|
CBRS_ALIGN_TOP |
컨테이너가 창의 맨 위에 도킹되고 있습니다. |
CBRS_ALIGN_BOTTOM |
컨테이너가 창 아래쪽에 도킹되고 있습니다. |
CBRS_ALIGN_LEFT |
컨테이너가 창의 왼쪽에 도킹되고 있습니다. |
CBRS_ALIGN_RIGHT |
컨테이너가 창의 오른쪽에 도킹되고 있습니다. |
CDockablePane::DockPaneStandard
개요(표준) 도킹을 사용하여 창을 도킹합니다.
virtual CPane* DockPaneStandard(BOOL& bWasDocked);
매개 변수
bWasDocked
[in] 메서드가 반환될 때 이 값은 창이 성공적으로 도킹되었는지 TRUE
포함합니다. 그렇지 않으면 FALSE
포함됩니다.
반환 값
창이 탭 창에 도킹되었거나 도킹의 결과로 탭 창이 만들어진 경우 이 메서드는 탭 창에 대한 포인터를 반환합니다. 창이 성공적으로 도킹된 경우 이 메서드는 this
포인터를 반환합니다. 도킹에 실패하면 이 메서드는 NULL
반환합니다.
CDockablePane::DockToRecentPos
창을 저장된 도킹 위치에 도킹합니다.
BOOL CDockablePane::DockToRecentPos();
반환 값
창이 성공적으로 도킹되었는지 TRUE
. 그렇지 않으면 FALSE
.
발언
도킹 가능한 창은 CRecentDockSiteInfo
개체에 최근 도킹 정보를 저장합니다.
CDockablePane::DockToWindow
한 도킹 창을 다른 도킹 창에 도킹합니다.
virtual BOOL DockToWindow(
CDockablePane* pTargetWindow,
DWORD dwAlignment,
LPCRECT lpRect = NULL);
매개 변수
pTargetWindow
[in, out] 이 창을 도킹할 도킹 가능한 창을 지정합니다.
dwAlignment
[in] 창의 도킹 맞춤을 지정합니다.
CBRS_ALIGN_LEFT
, CBRS_ALIGN_TOP
, CBRS_ALIGN_RIGHT
, CBRS_ALIGN_BOTTOM
또는 CBRS_ALIGN_ANY
중 하나일 수 있습니다. (afxres.h
.에 정의됨)
lpRect
[in] 창의 도킹 사각형을 지정합니다.
반환 값
창이 성공적으로 도킹되었는지 TRUE
. 그렇지 않으면 FALSE
.
발언
dwAlignment
지정한 맞춤을 사용하여 한 창을 다른 창에 도킹하려면 이 메서드를 호출합니다.
CDockablePane::DrawCaption
도킹 창의 캡션(그리기라고도 함)을 그립니다.
virtual void DrawCaption(
CDC* pDC,
CRect rectCaption);
매개 변수
pDC
[in] 그리기에 사용되는 디바이스 컨텍스트를 나타냅니다.
rectCaption
[in] 창 캡션의 경계 사각형을 지정합니다.
발언
프레임워크는 이 메서드를 호출하여 도킹 가능한 창의 캡션을 그립니다.
파생 클래스에서 이 메서드를 재정의하여 캡션의 모양을 사용자 지정합니다.
CDockablePane::EnableAutohideAll
이 창 및 컨테이너의 다른 창에 대해 자동 숨기기 모드를 사용하거나 사용하지 않도록 설정합니다.
void EnableAutohideAll(BOOL bEnable = TRUE);
매개 변수
bEnable
[in] 도킹 가능한 창에 대한 모든 기능 자동 숨기기를 사용하도록 설정하는 TRUE
. 그렇지 않으면 FALSE
.
발언
사용자가 Ctrl 키를 누른 상태에서 고정 단추를 클릭하여 창을 자동 숨기기 모드로 전환하면 동일한 컨테이너의 다른 모든 창도 자동 숨기기 모드로 전환됩니다.
특정 창에 대해 이 기능을 사용하지 않도록 설정하려면 bEnable
FALSE
설정하여 이 메서드를 호출합니다.
CDockablePane::EnableGripper
캡션(그리퍼라고도 함)을 표시하거나 숨깁니다.
virtual void EnableGripper(BOOL bEnable);
매개 변수
bEnable
[in] 캡션을 사용하도록 설정하는 TRUE
; 그렇지 않으면 FALSE
.
발언
프레임워크에서 도킹 가능한 창을 만들 때 지정한 경우에도 WS_STYLE
창 스타일이 없습니다. 즉, 창의 캡션은 프레임워크에서 제어하는 비 클라이언트 영역이지만 이 영역은 표준 창 캡션과 다릅니다.
언제든지 캡션을 표시하거나 숨길 수 있습니다. 창이 탭 창에 탭으로 추가되거나 창이 미니프레임 창에 부동될 때 프레임워크는 캡션을 숨깁니다.
CDockablePane::GetAHRestoredRect
자동 숨기기 모드에서 창의 위치를 지정합니다.
CRect GetAHRestoredRect() const;
반환 값
자동 숨기기 모드에 있을 때 창의 위치를 포함하는 CRect
개체입니다.
발언
CDockablePane::GetAHSlideMode
창의 슬라이드 자동 숨기기 모드를 검색합니다.
virtual UINT GetAHSlideMode() const;
반환 값
창의 슬라이드 자동 숨기기 모드를 지정하는 UINT
. 반환 값은 AFX_AHSM_MOVE
또는 AFX_AHSM_STRETCH
수 있지만 구현에서는 AFX_AHSM_MOVE
만 사용합니다.
발언
CDockablePane::GetCaptionHeight
현재 캡션의 높이를 픽셀 단위로 반환합니다.
virtual int GetCaptionHeight() const;
반환 값
캡션의 높이(픽셀)입니다.
발언
CDockablePane::EnableGripper
메서드에서 캡션을 숨기거나 창에 캡션이 없는 경우 캡션 높이는 0입니다.
CDockablePane::GetDefaultPaneDivider
창 컨테이너의 기본 창 나누기를 반환합니다.
CPaneDivider* GetDefaultPaneDivider() const;
반환 값
도킹 가능한 창이 주 프레임 창에 도킹된 경우 유효한 CPaneDivider
개체이거나, 도킹 가능한 창이 도킹되지 않았거나 부동인 경우 NULL
.
발언
창 구분선에 대한 자세한 내용은 CPaneDivider
클래스참조하세요.
CDockablePane::GetDockingStatus
제공된 포인터 위치에 따라 창이 도킹되는 기능을 결정합니다.
virtual AFX_CS_STATUS GetDockingStatus(
CPoint pt,
int nSensitivity);
매개 변수
pt
[in] 화면 좌표에 있는 포인터의 위치입니다.
nSensitivity
[in] 도킹을 사용하도록 설정하려면 포인터가 사각형 가장자리에서 픽셀 단위로 떨어져 있어야 합니다.
반환 값
다음 상태 값 중 하나입니다.
AFX_CS_STATUS 값 |
의미 |
---|---|
CS_NOTHING |
포인터가 도크 사이트에 있지 않습니다. 프레임워크는 창을 고정하지 않습니다. |
CS_DOCK_IMMEDIATELY |
포인터는 즉시 도킹 모드로 도킹 사이트 위에 있습니다(창은 DT_IMMEDIATE 도킹 모드를 사용함). 프레임워크는 창을 즉시 도킹합니다. |
CS_DELAY_DOCK |
포인터는 다른 도킹 창이거나 주 프레임의 가장자리인 도킹 사이트 위에 있습니다. 프레임워크는 지연 후 창을 도킹합니다. 이 지연에 대한 자세한 내용은 설명 섹션을 참조하세요. |
CS_DELAY_DOCK_TO_TAB |
포인터는 창이 탭 창에 도킹되도록 하는 도크 사이트 위에 있습니다. 이는 포인터가 다른 도킹 창의 캡션 위에 있거나 탭 창의 탭 영역 위에 있을 때 발생합니다. |
발언
프레임워크는 이 메서드를 호출하여 부동 창의 도킹을 처리합니다.
DT_IMMEDIATE
도킹 모드를 사용하는 부동 도구 모음 또는 도킹 창의 경우 도킹이 발생하기 전에 사용자가 부모 프레임의 클라이언트 영역에서 창을 이동할 수 있도록 도킹 명령을 지연합니다. 지연의 길이는 밀리초 단위로 측정되며 CDockingManager::m_nTimeOutBeforeToolBarDock
데이터 멤버에 의해 제어됩니다.
CDockingManager::m_nTimeOutBeforeToolBarDock
기본값은 200입니다. 이 동작은 Microsoft Word 2007의 도킹 동작을 에뮬레이트합니다.
지연된 도킹 상태(CS_DELAY_DOCK
및 CS_DELAY_DOCK_TO_TAB
)의 경우 프레임워크는 사용자가 마우스 단추를 놓을 때까지 도킹을 수행하지 않습니다. 창에서 DT_STANDARD
도킹 모드를 사용하는 경우 프레임워크는 프로젝팅된 도킹 위치에 사각형을 표시합니다. 창에서 DT_SMART
도킹 모드를 사용하는 경우 프레임워크는 프로젝팅된 도킹 위치에 스마트 도킹 마커와 반투명 사각형을 표시합니다. 창의 도킹 모드를 지정하려면 CBasePane::SetDockingMode
메서드를 호출합니다. 스마트 도킹에 대한 자세한 내용은 CDockingManager::GetSmartDockingParams
참조하세요.
CDockablePane::GetDragSensitivity
도킹 창의 끌기 민감도를 반환합니다.
static const CSize& GetDragSensitivity();
반환 값
끌기 지점을 중심으로 한 사각형의 너비와 높이를 픽셀 단위로 포함하는 CSize
개체입니다. 마우스 포인터가 이 사각형 밖으로 이동할 때까지 끌기 작업이 시작되지 않습니다.
CDockablePane::GetLastPercentInPaneContainer
창이 컨테이너(CPaneContainer
클래스)에서 차지하는 공간의 백분율을 검색합니다.
int GetLastPercentInPaneContainer() const;
반환 값
창이 컨테이너에서 차지하는 공간의 백분율을 지정하는 int
.
발언
이 메서드는 컨테이너가 레이아웃을 조정할 때 사용됩니다.
CDockablePane::GetTabArea
창의 탭 영역을 검색합니다.
virtual void GetTabArea(
CRect& rectTabAreaTop,
CRect& rectTabAreaBottom) const;
매개 변수
rectTabAreaTop
[in] GetTabArea
탭이 창 맨 위에 있는 경우 이 변수를 탭 영역으로 채웁니다. 탭이 창 아래쪽에 있는 경우 이 변수는 빈 사각형으로 채워집니다.
rectTabAreaBottom
[in] GetTabArea
탭이 창 아래쪽에 있는 경우 이 변수를 탭 영역으로 채웁니다. 탭이 창 맨 위에 있는 경우 이 변수는 빈 사각형으로 채워집니다.
발언
이 메서드는 CDockablePane
파생되고 탭이 있는 클래스에서만 사용됩니다. 자세한 내용은 CTabbedPane::GetTabArea
및 CMFCOutlookBar::GetTabArea
참조하세요.
CDockablePane::GetTabbedPaneRTC
다른 창이 현재 창에 도킹될 때 만들어지는 탭 창에 대한 런타임 클래스 정보를 반환합니다.
CRuntimeClass* GetTabbedPaneRTC() const;
반환 값
도킹 가능한 창에 대한 런타임 클래스 정보입니다.
발언
동적으로 만들어진 탭 창에 대한 런타임 클래스 정보를 검색하려면 이 메서드를 호출합니다. 이는 사용자가 한 창을 다른 창의 캡션으로 끌거나 CDockablePane::AttachToTabWnd
메서드를 호출하여 두 개의 도킹 가능한 창에서 탭 창을 프로그래밍 방식으로 만드는 경우에 발생할 수 있습니다.
CDockablePane::SetTabbedPaneRTC
메서드를 호출하여 런타임 클래스 정보를 설정할 수 있습니다.
CDockablePane::HasAutoHideMode
도킹 창을 자동 숨기기 모드로 전환할 수 있는지 여부를 지정합니다.
virtual BOOL HasAutoHideMode() const;
반환 값
도킹 가능한 창을 자동 숨기기 모드로 전환할 수 있는지 TRUE
. 그렇지 않으면 FALSE
.
발언
파생 클래스에서 이 메서드를 재정의하여 특정 도킹 가능한 창에 자동 숨기기 모드를 사용하지 않도록 설정합니다.
CDockablePane::HitTest
사용자가 마우스를 클릭할 창의 위치를 지정합니다.
virtual int HitTest(
CPoint point,
BOOL bDetectCaption = FALSE);
매개 변수
point
[in] 테스트할 지점을 지정합니다.
bDetectCaption
[in] 창의 캡션에 점이 있으면 HTCAPTION
반환해야 하는지 TRUE
. 그렇지 않으면 FALSE
.
반환 값
다음 값 중 하나입니다.
point
도킹 가능한 창에 없는 경우HTNOWHERE
.point
도킹 가능한 창의 클라이언트 영역에 있으면HTCLIENT
.point
도킹 가능한 창의 캡션 영역에 있으면HTCAPTION
.point
닫기 단추에 있는지AFX_HTCLOSE
.point
고정 단추에 있는지HTMAXBUTTON
.
CDockablePane::IsAutohideAllEnabled
컨테이너의 도킹 창과 다른 모든 창을 자동 숨기기 모드로 전환할 수 있는지 여부를 나타냅니다.
virtual BOOL IsAutohideAllEnabled() const;
반환 값
도킹 가능한 창과 컨테이너의 다른 모든 창을 자동 숨기기 모드로 전환할 수 있는지 TRUE
. 그렇지 않으면 FALSE
.
발언
사용자가 Ctrl 키를 누른 상태에서 도킹 핀 단추를 클릭하여 자동 숨기기 모드를 사용하도록 설정합니다.
이 동작을 사용하거나 사용하지 않도록 설정하려면 CDockablePane::EnableAutohideAll
메서드를 호출합니다.
CDockablePane::IsAutoHideMode
창이 자동 숨기기 모드인지 여부를 확인합니다.
virtual BOOL IsAutoHideMode() const;
반환 값
도킹 가능한 창이 자동 숨기기 모드에 있는지 TRUE
. 그렇지 않으면 FALSE
.
CDockablePane::IsDocked
현재 창이 도킹되었는지 여부를 확인합니다.
virtual BOOL IsDocked() const;
반환 값
도킹 가능한 창이 미니프레임 창에 속하지 않거나 다른 창이 있는 미니프레임 창에 부동하는 경우를 TRUE
.
FALSE
창이 미니프레임 창의 자식이고 미니프레임 창에 속하는 다른 창이 없는 경우입니다.
발언
창이 주 프레임 창에 도킹되는지 여부를 확인하려면 CDockablePane::GetDefaultPaneDivider
호출합니다. 메서드가NULL
이외의 포인터를 반환하면 창이 주 프레임 창에 도킹됩니다.
CDockablePane::IsHideInAutoHideMode
CDockablePane::ShowPane
호출하여 표시되거나 숨겨진 경우 자동 숨기기 모드에 있는 창의 동작을 결정합니다.
virtual BOOL IsHideInAutoHideMode() const;
반환 값
자동 숨기기 모드에서 도킹 가능한 창을 숨겨야 하는지 TRUE
. 그렇지 않으면 FALSE
.
발언
도킹 가능한 창이 자동 숨기기 모드인 경우 ShowPane
호출하여 창을 숨기거나 표시할 때 다르게 동작합니다. 이 동작은 정적 멤버 CDockablePane::m_bHideInAutoHideMode
의해 제어됩니다. 이 멤버가 TRUE
경우 도킹 가능한 창과 관련 자동 숨기기 도구 모음 또는 자동 숨기기 단추가 숨겨지거나 ShowPane
호출할 때 표시됩니다. 그렇지 않으면 도킹 가능한 창이 활성화되거나 비활성화되고 관련 자동 숨기기 도구 모음 또는 자동 숨기기 단추가 항상 표시됩니다.
개별 창의 기본 동작을 변경하려면 파생 클래스에서 이 메서드를 재정의합니다.
m_bHideInAutoHideMode
기본값은 FALSE
.
CDockablePane::IsInFloatingMultiPaneFrameWnd
창이 다중 창 프레임 창(CMultiPaneFrameWnd Class
)에 있는지 여부를 지정합니다.
virtual BOOL IsInFloatingMultiPaneFrameWnd() const;
반환 값
창이 다중 창 프레임 창에 있으면 TRUE
. 그렇지 않으면 FALSE
.
발언
CDockablePane::IsResizable
창의 크기 조정 가능 여부를 지정합니다.
virtual BOOL IsResizable() const;
반환 값
창의 크기가 조정 가능한지 TRUE
. 그렇지 않으면 FALSE
.
발언
기본적으로 도킹 가능한 창의 크기는 조정 가능합니다. 크기 조정을 방지하려면 파생 클래스에서 이 메서드를 재정의하고 FALSE
반환합니다.
FALSE
값은 CPane::DockPane
실패한 ASSERT
발생합니다. 대신 CDockingManager::AddPane
사용하여 부모 프레임 내에 창을 도킹합니다.
크기를 조정할 수 없는 창은 부동 모드로 전환하거나 자동 숨기기 모드로 전환할 수 없으며 항상 부모 프레임의 바깥 쪽 가장자리에 있습니다.
CDockablePane::IsTabLocationBottom
탭이 창의 위쪽 또는 아래쪽에 있는지 여부를 지정합니다.
virtual BOOL IsTabLocationBottom() const;
반환 값
TRUE
탭이 창 아래쪽에 있으면 이고, 탭이 창 위쪽에 있는지 FALSE
.
발언
자세한 내용은 CTabbedPane::IsTabLocationBottom
참조하세요.
CDockablePane::IsTracked
사용자가 창을 이동할지 여부를 지정합니다.
BOOL IsTracked() const;
반환 값
TRUE
창이 이동되고 있는지 확인합니다. 그렇지 않으면 FALSE
.
CDockablePane::IsVisible
현재 창이 표시되는지 여부를 확인합니다.
virtual BOOL IsVisible() const;
반환 값
도킹 가능한 창이 표시되는지 TRUE
. 그렇지 않으면 FALSE
.
발언
이 메서드를 호출하여 도킹 가능한 창이 표시되는지 여부를 확인합니다.
CWnd::IsWindowVisible
호출하거나 WS_VISIBLE
스타일을 테스트하는 대신 이 메서드를 사용할 수 있습니다. 반환된 표시 유형 상태는 자동 숨기기 모드를 사용할지 또는 사용하지 않도록 설정했는지 여부와 CDockablePane::IsHideInAutoHideMode
속성의 값에 따라 달라집니다.
도킹 가능한 창이 자동 숨기기 모드이고 IsHideInAutoHideMode
표시 상태가 항상 FALSE
FALSE
반환합니다.
도킹 가능한 창이 자동 숨기기 모드이고 IsHideInAutoHideMode
반환되는 경우 TRUE
표시 상태는 관련 자동 숨기기 도구 모음의 표시 상태에 따라 달라집니다.
도킹 가능한 창이 자동 숨기기 모드가 아닌 경우 표시 유형 상태는 CBasePane::IsVisible
메서드에 의해 결정됩니다.
##
CDockablePane::LoadState
내부 전용입니다. 자세한 내용은 Visual Studio 설치의 mfc
폴더에 있는 소스 코드를 참조하세요. 예를 들어 %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc
.
virtual BOOL LoadState(
LPCTSTR lpszProfileName = NULL,
int nIndex = -1,
UINT uiID = (UINT) -1
);
CDockablePane::m_bDisableAnimation
도킹 가능한 창의 자동 숨기기 애니메이션을 사용하지 않도록 설정할지 여부를 지정합니다.
AFX_IMPORT_DATA static BOOL m_bDisableAnimation;
CDockablePane::m_bHideInAutoHideMode
창이 자동 숨기기 모드일 때 창의 동작을 결정합니다.
AFX_IMPORT_DATA static BOOL m_bHideInAutoHideMode;
발언
이 값은 애플리케이션의 모든 도킹 창에 영향을 줍니다.
이 멤버를 TRUE
설정하면 도킹 가능한 창이 숨겨지거나 CDockablePane::ShowPane
호출할 때 관련 자동 숨기기 도구 모음 및 단추와 함께 표시됩니다.
이 멤버를 FALSE
설정하면 CDockablePane::ShowPane
호출할 때 도킹 가능한 창이 활성화되거나 비활성화됩니다.
CDockablePane::m_nSlideSteps
자동 숨기기 모드인 경우 창의 애니메이션 속도를 지정합니다.
AFX_IMPORT_DATA static int m_nSlideSteps;
발언
더 빠른 애니메이션 효과를 얻으려면 이 값을 줄입니다. 애니메이션 효과가 느리려면 이 값을 늘립니다.
CDockablePane::OnAfterChangeParent
자세한 내용은 Visual Studio 설치의 mfc
폴더에 있는 소스 코드를 참조하세요. 예를 들어 %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc
.
virtual void OnAfterChangeParent(CWnd* pWndOldParent);
매개 변수
[in] pWndOldParent
\
발언
CDockablePane::OnAfterDockFromMiniFrame
부동 도킹 막대가 프레임 창에 도킹되면 프레임워크에서 호출됩니다.
virtual void OnAfterDockFromMiniFrame();
발언
기본적으로 이 메서드는 아무 작업도 수행하지 않습니다.
CDockablePane::OnBeforeChangeParent
프레임워크는 창의 부모를 변경하기 전에 이 메서드를 호출합니다.
virtual void OnBeforeChangeParent(
CWnd* pWndNewParent,
BOOL bDelay = FALSE);
매개 변수
pWndNewParent
[in] 새 부모 창에 대한 포인터입니다.
bDelay
[in] 창이 도킹 해제된 경우 도킹 레이아웃의 다시 계산을 연기할지 여부를 지정하는 BOOL입니다. 자세한 내용은 CDockablePane::UndockPane
참조하세요.
발언
창이 도킹되고 새 부모가 도킹을 허용하지 않는 경우 이 메서드는 창을 도킹 해제합니다.
창이 탭 문서로 변환되는 경우 이 메서드는 최근 도킹 위치를 저장합니다. 프레임워크는 최근 도킹 위치를 사용하여 도킹된 상태로 다시 변환될 때 창의 위치를 복원합니다.
CDockablePane::OnBeforeFloat
프레임워크는 창이 부동 상태로 전환되기 전에 이 메서드를 호출합니다.
virtual BOOL OnBeforeFloat(
CRect& rectFloat,
AFX_DOCK_METHOD dockMethod);
매개 변수
rectFloat
[in] 창이 부동 상태일 때 창의 위치와 크기를 지정합니다.
dockMethod
[in] 도킹 메서드를 지정합니다. 가능한 값 목록은 CPane::DockPane
참조하세요.
반환 값
창을 부동할 수 있는지 TRUE
. 그렇지 않으면 FALSE
.
발언
이 메서드는 창이 부동하려고 할 때 프레임워크에서 호출됩니다. 창이 부동하기 전에 처리를 수행하려는 경우 파생 클래스에서 이 메서드를 재정의할 수 있습니다.
CDockablePane::OnPressButtons
사용자가 AFX_HTCLOSE
및 AFX_HTMAXBUTTON
단추 이외의 캡션 단추를 누를 때 호출됩니다.
virtual void OnPressButtons(UINT nHit);
매개 변수
nHit
[in] 이 매개 변수는 사용되지 않습니다.
발언
도킹 가능한 창의 캡션에 사용자 지정 단추를 추가하는 경우 사용자가 단추를 누를 때 알림을 받도록 이 메서드를 재정의합니다.
CDockablePane::OnSlide
자동 숨기기 모드에 있을 때 창에 애니메이션 효과를 주도록 프레임워크에서 호출됩니다.
virtual void OnSlide(BOOL bSlideOut);
매개 변수
bSlideOut
[in] TRUE
창을 표시합니다. 창을 숨기려면 FALSE
.
발언
파생 클래스에서 이 메서드를 재정의하여 사용자 지정 자동 숨기기 효과를 구현합니다.
CDockablePane::RemoveFromDefaultPaneDividier
프레임워크는 창이 도킹 취소될 때 이 메서드를 호출합니다.
void RemoveFromDefaultPaneDividier();
발언
이 메서드는 기본 창 나누기를 NULL
설정 하 고 해당 컨테이너에서 창을 제거 합니다.
CDockablePane::ReplacePane
창을 지정된 창으로 바꿉니다.
BOOL ReplacePane(
CDockablePane* pBarToReplaceWith,
AFX_DOCK_METHOD dockMethod,
BOOL bRegisterWithFrame = FALSE);
매개 변수
pBarToReplaceWith
[in] 도킹 가능한 창에 대한 포인터입니다.
dockMethod
[in] 사용되지 않습니다.
bRegisterWithFrame
[in] TRUE
경우 새 창이 이전 창의 부모 도킹 관리자에 등록됩니다. 새 창은 도킹 관리자가 유지 관리하는 창 목록의 이전 창 인덱스에 삽입됩니다.
반환 값
CDockablePane::RestoreDefaultPaneDivider
창이 역직렬화되면 프레임워크는 이 메서드를 호출하여 기본 창 구분자를 복원합니다.
void RestoreDefaultPaneDivider();
발언
복원된 기본 창 나누기가 있는 경우 현재 기본 창 나누기를 바꿉니다.
CDockablePane::SetAutoHideMode
도킹 창을 표시 모드와 자동 숨기기 모드 간에 전환합니다.
virtual CMFCAutoHideBar* SetAutoHideMode(
BOOL bMode,
DWORD dwAlignment,
CMFCAutoHideBar* pCurrAutoHideBar = NULL,
BOOL bUseTimer = TRUE);
매개 변수
bMode
[in] 자동 숨기기 모드를 사용하도록 설정하는 TRUE
; 일반 도킹 모드를 사용하도록 설정하려면 FALSE
.
dwAlignment
[in] 만들 자동 숨기기 창의 맞춤을 지정합니다.
pCurrAutoHideBar
[in, out] 현재 자동 숨기기 도구 모음에 대한 포인터입니다.
NULL
수 있습니다.
bUseTimer
[in] 사용자가 창을 자동 숨기기 모드로 전환하거나 창을 즉시 숨길 때 자동 숨기기 효과를 사용할지 여부를 지정합니다.
반환 값
자동 숨기기 모드로 전환한 결과로 생성된 자동 숨기기 도구 모음 또는 NULL
.
발언
프레임워크는 사용자가 고정 단추를 클릭하여 도킹 가능한 창을 자동 숨기기 모드 또는 일반 도킹 모드로 전환할 때 이 메서드를 호출합니다.
프로그래밍 방식으로 자동 숨기기 모드로 도킹 가능한 창을 전환하려면 이 메서드를 호출합니다. 창은 주 프레임 창에 도킹되어야 합니다( CDockablePane::GetDefaultPaneDivider
CPaneDivider
대한 유효한 포인터를 반환해야 합니다).
CDockablePane::SetAutoHideParents
창의 자동 숨기기 단추와 자동 숨기기 도구 모음을 설정합니다.
void SetAutoHideParents(
CMFCAutoHideBar* pToolBar,
CMFCAutoHideButton* pBtn);
매개 변수
pToolBar
[in] 자동 숨기기 도구 모음에 대한 포인터입니다.
pBtn
[in] 자동 숨기기 단추에 대한 포인터입니다.
CDockablePane::SetLastPercentInPaneContainer
창이 컨테이너에 차지하는 공간의 백분율을 설정합니다.
void SetLastPercentInPaneContainer(int n);
매개 변수
n
[in] 창이 컨테이너에서 차지하는 공간의 백분율을 지정하는 int
.
발언
프레임워크는 레이아웃을 다시 계산할 때 새 값을 사용하도록 창을 조정합니다.
CDockablePane::SetRestoredDefaultPaneDivider
복원된 기본 창 나누기를 설정합니다.
void SetRestoredDefaultPaneDivider(HWND hRestoredSlider);
매개 변수
hRestoredSlider
[in] 창 나누기(슬라이더)에 대한 핸들입니다.
발언
복원된 기본 창 구분선은 창이 역직렬화될 때 가져옵니다. 자세한 내용은 CDockablePane::RestoreDefaultPaneDivider
참조하세요.
CDockablePane::SetTabbedPaneRTC
두 창이 함께 도킹될 때 만들어지는 탭 창에 대한 런타임 클래스 정보를 설정합니다.
void SetTabbedPaneRTC(CRuntimeClass* pRTC);
매개 변수
pRTC
[in] 탭 창에 대한 런타임 클래스 정보입니다.
발언
동적으로 만들어진 탭 창에 대한 런타임 클래스 정보를 설정하려면 이 메서드를 호출합니다. 이는 사용자가 한 창을 다른 창의 캡션으로 끌거나 CDockablePane::AttachToTabWnd
메서드를 호출하여 두 개의 도킹 가능한 창에서 탭 창을 프로그래밍 방식으로 만드는 경우에 발생할 수 있습니다.
기본 런타임 클래스는 CDockablePane::Create
및 CDockablePane::CreateEx
dwTabbedStyle
매개 변수에 따라 설정됩니다. 새 탭 창을 사용자 지정하려면 다음 클래스 중 하나에서 클래스를 파생합니다.
그런 다음 런타임 클래스 정보에 대한 포인터를 사용하여 이 메서드를 호출합니다.
CDockablePane::ShowPane
창을 표시하거나 숨깁니다.
virtual void ShowPane(
BOOL bShow,
BOOL bDelay,
BOOL bActivate);
매개 변수
bShow
[in] TRUE
창을 표시합니다. 창을 숨기려면 FALSE
.
bDelay
[in] 도킹 레이아웃 조정을 지연하는 TRUE
; 도킹 레이아웃을 즉시 조정하려면 FALSE
.
bActivate
[in] TRUE
표시되면 창을 활성화합니다. 그렇지 않으면 FALSE
.
발언
도킹 가능한 창을 표시하거나 숨길 때 CWnd::ShowWindow
대신 이 메서드를 호출합니다.
CDockablePane::Slide
자동 숨기기 모드에 있는 창에 애니메이션 효과를 둡니다.
virtual void Slide(
BOOL bSlideOut,
BOOL bUseTimer = TRUE);
매개 변수
bSlideOut
[in] TRUE
창을 표시합니다. 창을 숨기려면 FALSE
.
bUseTimer
[in] 자동 숨기기 효과를 사용하여 창을 표시하거나 숨기는 TRUE
. 창을 즉시 표시하거나 숨기려면 FALSE
.
발언
프레임워크는 자동 숨기기 모드의 창에 애니메이션 효과를 주도록 이 메서드를 호출합니다.
이 메서드는 CDockablePane::m_nSlideDefaultTimeOut
값을 사용하여 슬라이드 효과의 제한 시간을 결정합니다. 제한 시간의 기본값은 1입니다. 자동 숨기기 알고리즘을 사용자 지정하는 경우 이 멤버를 수정하여 시간 초과를 변경합니다.
CDockablePane::ToggleAutoHide
항상 표시되는 모드와 자동 숨기기 모드 간에 창을 전환합니다.
virtual void ToggleAutoHide();
발언
이 메서드는 CDockablePane::SetAutoHideMode
호출하여 창에 대한 자동 숨기기 모드를 전환합니다.
CDockablePane::UndockPane
주 프레임 창 또는 미니프레임 창 컨테이너에서 창을 도킹 해제합니다.
virtual void UndockPane(BOOL bDelay = FALSE);
매개 변수
bDelay
[in] 도킹 레이아웃 계산을 지연할 TRUE
있습니다. 도킹 레이아웃을 즉시 다시 계산하려면 FALSE
.
발언
이 메서드를 호출하여 주 프레임 창 또는 다중 미니 프레임 창 컨테이너(다른 창이 있는 단일 미니프레임 창에 부동 창)에서 창을 도킹 해제합니다.
CDockingManager
수행되지 않는 외부 작업을 수행하기 전에 창의 도킹을 취소해야 합니다. 예를 들어 한 위치에서 다른 위치로 프로그래밍 방식으로 이동하려면 창을 도킹 해제해야 합니다.
프레임워크는 제거되기 전에 창을 자동으로 도킹 해제합니다.