비고
MFC(Microsoft Foundation Classs) 라이브러리는 계속 지원됩니다. 그러나 더 이상 기능을 추가하거나 설명서를 업데이트하지 않습니다.
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입니다.
반환 값
창이 탭으로 성공적으로 추가되고 프로세스에서 제거되지 않은 경우 TRUE입니다. 추가할 창이 형식 CBaseTabbedPane의 개체이면 FALSE입니다. 자세한 내용은 설명 섹션을 참조하세요.
설명
탭 창에서 창을 새 탭으로 추가하려면 이 메서드를 호출합니다. pNewBarCBaseTabbedPane모든 탭이 탭 창에 복사된 다음 pNewBar가 제거됩니다.
따라서 pNewBar는 잘못된 포인터가 되며 사용해서는 안 됩니다.
CBaseTabbedPane::AllowDestroyEmptyTabbedPane
빈 탭 창을 제거할 수 있는지 여부를 지정합니다.
virtual BOOL AllowDestroyEmptyTabbedPane() const;
반환 값
빈 탭 창을 제거할 수 있으면 TRUE입니다. 그렇지 않으면 FALSE입니다. 기본 구현은 항상 TRUE를 반환합니다.
설명
빈 탭 창을 제거할 수 없는 경우 프레임워크는 창을 대신 숨깁니다.
CBaseTabbedPane::ApplyRestoredTabInfo
레지스트리에서 탭 설정을 로드하고 탭 창에 적용합니다.
virtual void ApplyRestoredTabInfo(BOOL bUseTabIndexes = FALSE);
매개 변수
bUseTabIndexes
[in] 이 매개 변수는 프레임워크에서 내부적으로 사용됩니다.
설명
이 메서드는 레지스트리에서 도킹 상태 정보를 다시 로드할 때 프레임워크에서 호출됩니다. 이 메서드는 탭 창의 탭 순서 및 탭 이름에 대한 정보를 가져옵니다.
CBaseTabbedPane::CanFloat
탭 창이 부동할 수 있는지 여부를 지정합니다.
virtual BOOL CanFloat() const;
반환 값
창이 부동할 수 있으면 TRUE입니다. 그렇지 않으면 FALSE입니다.
CBaseTabbedPane::CanSetCaptionTextToTabName
탭 창의 캡션이 활성 탭과 동일한 텍스트를 표시할지 여부를 결정합니다.
virtual BOOL CanSetCaptionTextToTabName() const;
반환 값
탭 창의 캡션 텍스트가 현재 탭의 텍스트로 설정된 경우 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] 프레임워크가 분리된 후 창을 숨길지 여부를 지정하는 부울 매개 변수입니다.
반환 값
프레임워크가 창을 성공적으로 분리하면 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를 지정합니다.
반환 값
창이 발견된 경우 창에 대한 포인터입니다. 그렇지 않으면 NULL입니다.
설명
이 메서드는 창의 모든 탭을 비교하고 uBarID 매개 변수로 지정된 ID를 사용하여 탭을 반환합니다.
CBaseTabbedPane::FindBarByTabNumber
탭에 있는 창을 반환합니다.
virtual CWnd* FindBarByTabNumber(
int nTabNum,
BOOL bGetWrappedBar = FALSE);
매개 변수
nTabNum
[in] 검색할 탭의 인덱스(0부터 시작하는 인덱스)를 지정합니다.
bGetWrappedBar
[in] 창 자체 대신 창의 기본(래핑된) 창을 반환하려면 TRUE입니다. 그렇지 않으면 FALSE입니다. 이는 CDockablePaneAdapter에서 파생된 창에만 적용됩니다.
반환 값
창을 찾으면 검색 중인 창에 대한 유효한 포인터가 반환됩니다. 그렇지 않으면 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입니다.
반환 값
창이 부동하면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
현재 분리 가능한 탭에 있는 창을 부동하려면 이 메서드를 호출합니다.
프로그래밍 방식으로 창을 분리하려면 dockMethod 매개 변수에 대한 DM_SHOW 지정합니다. 창을 이전에 부동 위치와 동일한 위치에 부동하려는 경우 dockMethod 매개 변수로 DM_DBL_CLICK 지정합니다.
CBaseTabbedPane::GetDefaultTabsOrder
창에서 탭의 기본 순서를 반환합니다.
const CArray<int,int>& GetDefaultTabsOrder();
반환 값
CArray 창에서 탭의 기본 순서를 지정하는 개체입니다.
설명
Outlook 표시줄이 초기 상태로 다시 설정되면 프레임워크에서 이 메서드를 호출합니다.
CBaseTabbedPane::GetFirstVisibleTab
표시된 첫 번째 탭에 대한 포인터를 검색합니다.
virtual CWnd* GetFirstVisibleTab(int& iTabNum);
매개 변수
iTabNum
[in] 정수에 대한 참조입니다. 이 메서드는 처음 표시된 탭의 인덱스(0부터 시작)를 이 매개 변수에 씁니다. 표시된 탭이 없으면 -1을 씁니다.
반환 값
성공하면 첫 번째 표시된 탭에 대한 포인터입니다. 그렇지 않으면 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;
반환 값
탭 창의 탭 수입니다.
CBaseTabbedPane::GetUnderlyingWindow
래핑된 기본 탭 창을 가져옵니다.
virtual CMFCBaseTabCtrl* GetUnderlyingWindow();
반환 값
기본 탭 창에 대한 포인터입니다.
CBaseTabbedPane::GetVisibleTabsNum
표시되는 탭 수를 반환합니다.
virtual int GetVisibleTabsNum() const;
반환 값
0보다 크거나 같은 표시되는 탭의 수입니다.
설명
탭 창에 표시되는 탭 수를 확인하려면 이 메서드를 호출합니다.
CBaseTabbedPane::HasAutoHideMode
탭 창을 자동 숨기기 모드로 전환할 수 있는지 여부를 결정합니다.
virtual BOOL HasAutoHideMode() const;
반환 값
창을 자동 숨기기 모드로 전환할 수 있으면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
자동 숨기기 모드를 사용하지 않도록 설정하면 탭 창 캡션에 고정 단추가 표시되지 않습니다.
CBaseTabbedPane::IsHideSingleTab
탭이 하나만 표시되는 경우 탭 창이 숨겨지는지 여부를 확인합니다.
virtual BOOL IsHideSingleTab() const;
반환 값
탭이 하나만 표시되면 탭 창이 표시되지 않으면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
탭이 하나만 열려 있기 때문에 창이 표시되지 않으면 이 메서드를 호출하여 탭 창이 제대로 작동하는지 확인할 수 있습니다.
CBaseTabbedPane::RemovePane
탭 창에서 창을 제거합니다.
virtual BOOL RemovePane(CWnd* pBar);
매개 변수
pBar
[in, out] 탭 창에서 제거할 창에 대한 포인터입니다.
반환 값
탭 창에서 창이 성공적으로 제거되고 탭 창이 여전히 유효한 경우 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입니다.
반환 값
탭이 성공적으로 표시되거나 숨겨진 경우 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] 사용자가 창을 자동 숨기기 모드로 전환할 때 자동 숨기기 효과를 사용할지 또는 창을 즉시 숨길지를 지정합니다.
반환 값
자동 숨기기 모드로 전환할 때 생성되는 자동 숨기기 도구 모음에 대한 포인터이거나, 도구 모음이 만들어지지 않은 경우 NULL입니다.
설명
프레임워크는 사용자가 고정 단추를 선택하여 탭 창을 자동 숨기기 모드 또는 일반 도킹 모드로 전환할 때 이 메서드를 호출합니다.
자동 숨기기 모드는 탭 창의 각 분리 가능한 창에 대해 설정됩니다. 분리할 수 없는 창은 무시됩니다. 자세한 내용은 CMFCBaseTabCtrl::EnableTabDetach를 참조하세요.
탭 창을 프로그래밍 방식으로 자동 숨기기 모드로 전환하려면 이 메서드를 호출합니다. 창은 주 프레임 창에 도킹되어야 합니다(CDockablePane::GetDefaultPaneDivider는 CPaneDivider에 대한 유효한 포인터를 반환해야 합니다).