CBaseTabbedPane 클래스
CDockablePane Class 의 기능을 확장하여 탭 창 만들기를 지원합니다.
구문
class CBaseTabbedPane : public CDockablePane
멤버
공용 생성자
속성 | 설명 |
---|---|
CBaseTabbedPane::CBaseTabbedPane |
기본 생성자입니다. |
공용 메서드
설명
이 클래스는 추상 클래스이며 인스턴스화할 수 없습니다. 모든 종류의 탭 창에 공통적인 서비스를 구현합니다.
현재 라이브러리에는 CTabbedPane 클래스 및 CMFCOutlookBar 클래스라는 두 개의 파생된 탭 창 클래스가 포함되어 있습니다.
개체는 CBaseTabbedPane
CMFCBaseTabCtrl 클래스 개체에 대한 포인터를 래핑합니다. 그런 다음 CMFCBaseTabCtrl 클래스 는 탭 창의 자식 창이 됩니다.
탭 창을 만드는 방법에 대한 자세한 내용은 CDockablePane 클래스, CTabbedPane 클래스 및 CMFCOutlookBar 클래스를 참조하세요.
상속 계층 구조
CBaseTabbedPane
요구 사항
헤더: afxBaseTabbedPane.h
CBaseTabbedPane::AddTab
탭 창에 새 탭을 추가합니다.
virtual BOOL AddTab(
CWnd* pNewBar,
BOOL bVisible = TRUE,
BOOL bSetActive = TRUE,
BOOL bDetachable = TRUE);
매개 변수
pNewBar
[in, out] 추가할 창에 대한 포인터입니다. 이 메서드를 호출한 후 이 포인터가 유효하지 않을 수 있습니다. 자세한 내용은 설명 섹션을 참조하세요.
bVisible
[in] 탭을 표시하려면 TRUE입니다. 그렇지 않으면 FALSE입니다.
bSetActive
[in] TRUE이면 탭을 활성 탭으로 만듭니다. 그렇지 않으면 FALSE입니다.
bDetachable
[in] 탭을 분리할 수 있도록 하려면 TRUE입니다. 그렇지 않으면 FALSE입니다.
Return Value
창이 탭으로 성공적으로 추가되고 프로세스에서 제거되지 않은 경우 TRUE입니다. 추가할 창이 형식 CBaseTabbedPane
의 개체이면 FALSE입니다. 자세한 내용은 설명 섹션을 참조하세요.
설명
탭 창에서 창을 새 탭으로 추가하려면 이 메서드를 호출합니다. pNewBar가 형식CBaseTabbedPane
의 개체를 가리키는 경우 모든 탭이 탭 창에 복사된 다음 pNewBar가 제거됩니다. 따라서 pNewBar는 잘못된 포인터가 되며 사용해서는 안 됩니다.
CBaseTabbedPane::AllowDestroyEmptyTabbedPane
빈 탭 창을 제거할 수 있는지 여부를 지정합니다.
virtual BOOL AllowDestroyEmptyTabbedPane() const;
Return Value
빈 탭 창을 제거할 수 있으면 TRUE입니다. 그렇지 않으면 FALSE입니다. 기본 구현은 항상 TRUE를 반환합니다.
설명
빈 탭 창을 제거할 수 없는 경우 프레임워크는 창을 대신 숨깁니다.
CBaseTabbedPane::ApplyRestoredTabInfo
레지스트리에서 탭 설정을 로드하고 탭 창에 적용합니다.
virtual void ApplyRestoredTabInfo(BOOL bUseTabIndexes = FALSE);
매개 변수
bUseTabIndexes
[in] 이 매개 변수는 프레임워크에서 내부적으로 사용됩니다.
설명
이 메서드는 레지스트리에서 도킹 상태 정보를 다시 로드할 때 프레임워크에서 호출됩니다. 이 메서드는 탭 창의 탭 순서 및 탭 이름에 대한 정보를 가져옵니다.
CBaseTabbedPane::CanFloat
탭 창이 부동할 수 있는지 여부를 지정합니다.
virtual BOOL CanFloat() const;
Return Value
창이 부동할 수 있으면 TRUE입니다. 그렇지 않으면 FALSE입니다.
CBaseTabbedPane::CanSetCaptionTextToTabName
탭 창의 캡션이 활성 탭과 동일한 텍스트를 표시할지 여부를 결정합니다.
virtual BOOL CanSetCaptionTextToTabName() const;
Return Value
탭 창의 캡션 텍스트가 현재 탭의 텍스트로 설정된 경우 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
이 메서드는 탭 창 캡션에 표시된 텍스트가 활성 탭의 레이블을 복제하는지 여부를 확인하는 데 사용됩니다. CBaseTabbedPane::EnableSetCaptionTextToTabName을 호출하여 이 기능을 사용하거나 사용하지 않도록 설정할 수 있습니다.
CBaseTabbedPane::ConvertToTabbedDocument
하나 이상의 도킹 가능한 창을 MDI 탭 문서로 변환합니다.
virtual void ConvertToTabbedDocument(BOOL bActiveTabOnly = TRUE);
매개 변수
bActiveTabOnly
[in] 탭 창을 변환하는 경우 TRUE를 지정하여 활성 탭만 변환합니다. 창의 모든 탭을 변환하려면 FALSE를 지정합니다.
CBaseTabbedPane::D etachPane
탭 창에서 창을 분리합니다.
virtual BOOL DetachPane(
CWnd* pBar,
BOOL bHide = FALSE);
매개 변수
pBar
[in] 분리할 창에 대한 포인터입니다.
bHide
[in] 프레임워크가 분리된 후 창을 숨길지 여부를 지정하는 부울 매개 변수입니다.
Return Value
프레임워크가 창을 성공적으로 분리하면 TRUE입니다. pBar가 NULL이거나 탭 창에 없는 창을 참조하는 경우 FALSE입니다.
설명
가능한 경우 프레임워크는 분리된 창을 부동합니다. 자세한 내용은 CBasePane::CanFloat을 참조하세요.
CBaseTabbedPane::EnableSetCaptionTextToTabName
탭 창에서 현재 탭의 레이블 텍스트와 캡션 텍스트를 동기화하는 기능을 사용하거나 사용하지 않도록 설정합니다.
virtual void EnableSetCaptionTextToTabName(BOOL bEnable);
매개 변수
bEnable
[in] TRUE이면 탭 창 캡션을 활성 탭 캡션과 동기화합니다. 그렇지 않으면 FALSE입니다.
CBaseTabbedPane::FillDefaultTabsOrderArray
내부 탭 순서를 기본 상태로 복원합니다.
void FillDefaultTabsOrderArray();
설명
이 메서드는 프레임워크가 Outlook 표시줄을 초기 상태로 복원할 때 호출됩니다.
CBaseTabbedPane::FindPaneByID
창 ID로 식별되는 창을 반환합니다.
virtual CWnd* FindPaneByID(UINT uBarID);
매개 변수
uBarID
[in] 찾을 창의 ID를 지정합니다.
Return Value
창이 발견된 경우 창에 대한 포인터입니다. 그렇지 않으면 NULL입니다.
설명
이 메서드는 창의 모든 탭을 비교하고 uBarID 매개 변수로 지정된 ID를 사용하여 탭을 반환합니다.
CBaseTabbedPane::FindBarByTabNumber
탭에 있는 창을 반환합니다.
virtual CWnd* FindBarByTabNumber(
int nTabNum,
BOOL bGetWrappedBar = FALSE);
매개 변수
nTabNum
[in] 검색할 탭의 인덱스(0부터 시작하는 인덱스)를 지정합니다.
bGetWrappedBar
[in] 창 자체 대신 창의 기본(래핑된) 창을 반환하려면 TRUE입니다. 그렇지 않으면 FALSE입니다. 이는 CDockablePaneAdapter에서 파생된 창에만 적용됩니다.
Return Value
창을 찾으면 검색 중인 창에 대한 유효한 포인터가 반환됩니다. 그렇지 않으면 NULL입니다.
설명
nTabNum 매개 변수로 지정된 탭에 있는 창을 검색하려면 이 메서드를 호출합니다.
CBaseTabbedPane::FloatTab
창이 현재 분리 가능한 탭에 있는 경우에만 창을 부동합니다.
virtual BOOL FloatTab(
CWnd* pBar,
int nTabID,
AFX_DOCK_METHOD dockMethod,
BOOL bHide = FALSE);
매개 변수
pBar
[in, out] 부동 창에 대한 포인터입니다.
nTabID
[in] 부동 탭의 인덱스(0부터 시작하는 인덱스)를 지정합니다.
dockMethod
[in] 창을 부동으로 만드는 데 사용할 메서드를 지정합니다. 자세한 내용은 설명 섹션을 참조하세요.
bHide
[in] 부동하기 전에 창을 숨기려면 TRUE입니다. 그렇지 않으면 FALSE입니다.
Return Value
창이 부동하면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
현재 분리 가능한 탭에 있는 창을 부동하려면 이 메서드를 호출합니다.
프로그래밍 방식으로 창을 분리하려면 dockMethod 매개 변수에 대한 DM_SHOW 지정합니다. 창을 이전에 부동 위치와 동일한 위치에 부동하려는 경우 dockMethod 매개 변수로 DM_DBL_CLICK 지정합니다.
CBaseTabbedPane::GetDefaultTabsOrder
창에서 탭의 기본 순서를 반환합니다.
const CArray<int,int>& GetDefaultTabsOrder();
Return Value
CArray
창에서 탭의 기본 순서를 지정하는 개체입니다.
설명
Outlook 표시줄이 초기 상태로 다시 설정되면 프레임워크에서 이 메서드를 호출합니다.
CBaseTabbedPane::GetFirstVisibleTab
표시된 첫 번째 탭에 대한 포인터를 검색합니다.
virtual CWnd* GetFirstVisibleTab(int& iTabNum);
매개 변수
iTabNum
[in] 정수에 대한 참조입니다. 이 메서드는 처음 표시된 탭의 인덱스(0부터 시작)를 이 매개 변수에 씁니다. 표시된 탭이 없으면 -1을 씁니다.
Return Value
성공하면 첫 번째 표시된 탭에 대한 포인터입니다. 그렇지 않으면 NULL입니다.
CBaseTabbedPane::GetMinSize
창에 허용되는 최소 크기를 검색합니다.
virtual void GetMinSize(CSize& size) const;
매개 변수
size
[out] CSize
허용되는 최소 크기로 채워진 개체입니다.
설명
최소 창 크기를 일관되게 처리하는 경우(CPane::m_bHandleMinSize) 크기는 활성 탭에 허용되는 최소 크기로 채워집니다. 그렇지 않으면 크기가 CPane::GetMinSize의 반환 값으로 채워집니다.
CBaseTabbedPane::GetPaneIcon
창에 허용되는 최소 크기를 검색합니다.
virtual void GetMinSize(CSize& size) const;
매개 변수
size
[out] CSize
허용되는 최소 크기로 채워진 개체입니다.
설명
최소 창 크기를 일관되게 처리하는 경우(CPane::m_bHandleMinSize) 크기는 활성 탭에 허용되는 최소 크기로 채워집니다. 그렇지 않으면 크기가 CPane::GetMinSize의 반환 값으로 채워집니다.
CBaseTabbedPane::GetPaneList
탭 창에 포함된 창 목록을 반환합니다.
virtual void GetPaneList(
CObList& lst,
CRuntimeClass* pRTCFilter = NULL);
매개 변수
순
[out] CObList
탭 창에 포함된 창으로 채워진 A입니다.
pRTCFilter
[in] NULL이 아닌 경우 반환된 목록에는 지정된 런타임 클래스의 창만 포함됩니다.
CBaseTabbedPane::GetTabArea
위쪽 및 아래쪽 탭 영역의 경계 사각형을 반환합니다.
virtual void GetTabArea(
CRect& rectTabAreaTop,
CRect& rectTabAreaBottom) const = 0;
매개 변수
rectTabAreaTop
[out] 위쪽 탭 영역의 화면 좌표를 받습니다.
rectTabAreaBottom
[out] 아래쪽 탭 영역의 화면 좌표를 받습니다.
설명
이 메서드를 호출하여 위쪽 및 아래쪽 탭 영역에 대한 경계 사각형을 화면 좌표로 확인합니다.
CBaseTabbedPane::GetTabsNum
탭 창의 탭 수를 반환합니다.
virtual int GetTabsNum() const;
Return Value
탭 창의 탭 수입니다.
CBaseTabbedPane::GetUnderlyingWindow
래핑된 기본 탭 창을 가져옵니다.
virtual CMFCBaseTabCtrl* GetUnderlyingWindow();
Return Value
기본 탭 창에 대한 포인터입니다.
CBaseTabbedPane::GetVisibleTabsNum
표시되는 탭 수를 반환합니다.
virtual int GetVisibleTabsNum() const;
Return Value
0보다 크거나 같은 표시되는 탭의 수입니다.
설명
탭 창에 표시되는 탭 수를 확인하려면 이 메서드를 호출합니다.
CBaseTabbedPane::HasAutoHideMode
탭 창을 자동 숨기기 모드로 전환할 수 있는지 여부를 결정합니다.
virtual BOOL HasAutoHideMode() const;
Return Value
창을 자동 숨기기 모드로 전환할 수 있으면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
자동 숨기기 모드를 사용하지 않도록 설정하면 탭 창 캡션에 고정 단추가 표시되지 않습니다.
CBaseTabbedPane::IsHideSingleTab
탭이 하나만 표시되는 경우 탭 창이 숨겨지는지 여부를 확인합니다.
virtual BOOL IsHideSingleTab() const;
Return Value
탭이 하나만 표시되면 탭 창이 표시되지 않으면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
탭이 하나만 열려 있기 때문에 창이 표시되지 않으면 이 메서드를 호출하여 탭 창이 제대로 작동하는지 확인할 수 있습니다.
CBaseTabbedPane::RemovePane
탭 창에서 창을 제거합니다.
virtual BOOL RemovePane(CWnd* pBar);
매개 변수
pBar
[in, out] 탭 창에서 제거할 창에 대한 포인터입니다.
Return Value
탭 창에서 창이 성공적으로 제거되고 탭 창이 여전히 유효한 경우 TRUE입니다. 마지막 창이 탭 창에서 제거되고 탭 창이 제거될 경우 FALSE입니다. 반환 값이 FALSE이면 탭 창을 더 이상 사용하지 마세요.
설명
이 메서드를 호출하여 탭 창에서 pBar 매개 변수로 지정된 창을 제거합니다.
CBaseTabbedPane::SetAutoDestroy
탭 컨트롤 막대가 자동으로 제거되는지 여부를 결정합니다.
void SetAutoDestroy(BOOL bAutoDestroy = TRUE);
매개 변수
bAutoDestroy
[in] 탭 창이 동적으로 만들어졌으며 수명을 제어하지 않는 경우 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
탭 창을 동적으로 만들고 수명을 제어하지 않는 경우 자동 삭제 모드를 TRUE로 설정합니다. 자동 삭제 모드가 TRUE이면 탭 창이 프레임워크에 의해 자동으로 제거됩니다.
CBaseTabbedPane::ShowTab
탭을 표시하거나 숨깁니다.
virtual BOOL ShowTab(
CWnd* pBar,
BOOL bShow,
BOOL bDelay,
BOOL bActivate);
매개 변수
pBar
[in] 표시하거나 숨길 창에 대한 포인터입니다.
bShow
[in] 창을 표시하려면 TRUE입니다. 창을 숨기려면 FALSE입니다.
bDelay
[in] 탭 레이아웃 조정을 지연하려면 TRUE입니다. 그렇지 않으면 FALSE입니다.
bActivate
[in] TRUE이면 탭을 활성 탭으로 만듭니다. 그렇지 않으면 FALSE입니다.
Return Value
탭이 성공적으로 표시되거나 숨겨진 경우 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
이 메서드를 호출하면 bShow 매개 변수의 값에 따라 창이 표시되거나 숨겨집니다. 탭을 숨기고 기본 탭 창에서 마지막으로 표시되는 탭인 경우 탭 창이 숨겨집니다. 이전에 탭이 표시되지 않을 때 탭을 표시하면 탭 창이 표시됩니다.
CBaseTabbedPane::RecalcLayout
창에 대한 레이아웃 정보를 다시 계산합니다.
virtual void RecalcLayout();
설명
창이 부동하는 경우 이 메서드는 창의 크기를 미니 프레임의 현재 크기로 조정하도록 프레임워크에 알깁니다.
창이 도킹된 경우 이 메서드는 아무 작업도 수행하지 않습니다.
CBaseTabbedPane::SetAutoHideMode
탭 창에서 분리 가능한 창의 자동 숨기기 모드를 설정합니다.
virtual CMFCAutoHideToolBar* SetAutoHideMode(
BOOL bMode,
DWORD dwAlignment,
CMFCAutoHideToolBar* pCurrAutoHideBar = NULL,
BOOL bUseTimer = TRUE);
매개 변수
bMode
[in] 자동 숨기기 모드를 사용하도록 설정하려면 TRUE입니다. 일반 도킹 모드를 사용하도록 설정하려면 FALSE입니다.
dwAlignment
[in] 만들 자동 숨기기 창의 맞춤을 지정합니다. 가능한 값 목록은 CPane::MoveByAlignment를 참조하세요.
pCurrAutoHideBar
[in, out] 현재 자동 숨기기 도구 모음에 대한 포인터입니다. NULL일 수 있습니다.
bUseTimer
[in] 사용자가 창을 자동 숨기기 모드로 전환할 때 자동 숨기기 효과를 사용할지 또는 창을 즉시 숨길지를 지정합니다.
Return Value
자동 숨기기 모드로 전환할 때 생성되는 자동 숨기기 도구 모음에 대한 포인터이거나, 도구 모음이 만들어지지 않은 경우 NULL입니다.
설명
프레임워크는 사용자가 고정 단추를 선택하여 탭 창을 자동 숨기기 모드 또는 일반 도킹 모드로 전환할 때 이 메서드를 호출합니다.
자동 숨기기 모드는 탭 창의 각 분리 가능한 창에 대해 설정됩니다. 분리할 수 없는 창은 무시됩니다. 자세한 내용은 CMFCBaseTabCtrl::EnableTabDetach를 참조하세요.
탭 창을 프로그래밍 방식으로 자동 숨기기 모드로 전환하려면 이 메서드를 호출합니다. 창은 주 프레임 창에 도킹되어야 합니다(CDockablePane::GetDefaultPaneDivider는 CPaneDivider에 대한 유효한 포인터를 반환해야 합니다).