CTabbedPane クラス
更新 : 2007 年 11 月
切り離し可能なタブを持つペインの機能を実装します。
class CTabbedPane : public CBaseTabbedPane
メンバ
パブリック コンストラクタ
名前 |
説明 |
---|---|
CTabbedPane::CTabbedPane |
既定のコンストラクタです。 |
パブリック メソッド
名前 |
説明 |
---|---|
(CBaseTabbedPane::DetachPane をオーバーライドします。) |
|
タブの自動色指定を有効または無効にします。 |
|
ペインをフローティングにします (ただし、切り離し可能なタブに現在ペインがある場合に限ります)。(CBaseTabbedPane::FloatTab をオーバーライドします。) |
|
タブ付きウィンドウ内のタブ領域のサイズと位置を返します。 |
|
|
|
タブ付きペインを自動的に隠すモードに切り替えることができるかどうかを判断します。(CBaseTabbedPane::HasAutoHideMode をオーバーライドします。) |
|
タブがウィンドウの下部にあるかどうかを判定します。 |
|
すべてのタブ付きペインを既定の状態にリセットします。 |
|
自動カラー機能が有効な場合に使用できるカスタム カラーのリストを設定します。 |
データ メンバ
名前 |
説明 |
---|---|
アプリケーションのタブの既定の場所です。 |
|
カスタム CMFCTabCtrl 派生オブジェクトのランタイム クラス情報です。 |
解説
あるペインのキャプションを指すことにより、ユーザーが別のペインをそのペインにアタッチすると、フレームワークはこのクラスのインスタンスを自動的に生成します。フレームワークによって生成されたタブ付きペインの ID はすべて -1 になります。
Outlook スタイルのタブではなく、通常のタブを指定する場合は、AFX_CBRS_REGULAR_TABS スタイルを CDockablePane::CreateEx メソッドに渡します。
切り離し可能なタブの付いたペインを作成する場合は、そのペインがフレームワークによって自動的に破棄される可能性があるため、ポインタを格納することはできません。タブ付きペインへのポインタを取得するには、CBasePane::GetParentTabbedPane メソッドを呼び出します。
使用例
CTabbedPane オブジェクトを作成する例を次に示します。次に、CBaseTabbedPane::AddTab を使用して、追加のタブをアタッチしています。
CTabbedPane* pTabbededBar = new CTabbedPane (TRUE);
if (!pTabbededBar->Create (_T(""), this, CRect (0, 0, 200, 200),
TRUE,
(UINT) -1,
WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS |
WS_CLIPCHILDREN | CBRS_LEFT |
CBRS_FLOAT_MULTI))
{
TRACE0("Failed to create Solution Explorer bar\n");
return FALSE; // fail to create
}
pTabbededBar->AddTab (&m_wndClassView);
pTabbededBar->AddTab (&m_wndResourceView);
pTabbededBar->AddTab (&m_wndFileView);
pTabbededBar->EnableDocking(CBRS_ALIGN_ANY);
DockPane(pTabbededBar);
タブ付きコントロール バー オブジェクトを作成するもう一つの方法は、CDockablePane::AttachToTabWnd を使用する方法です。AttachToTabWnd メソッドは、CDockablePane::SetTabbedPaneRTC によって設定されたランタイム クラス情報を使って、タブ付きペイン オブジェクトを動的に作成します。
この例では、タブ付きペインを動的に作成し、2 つのタブをアタッチし、2 つ目のタブを切り離し不可能なタブにしています。
DockPane(&m_wndClassView);
CTabbedPane* pTabbedBar = NULL;
m_wndResourceView.AttachToTabWnd (&m_wndClassView, DM_SHOW, TRUE,
(CDockablePane**) &pTabbedBar);
m_wndFileView.AttachToTabWnd (pTabbedBar, DM_SHOW, TRUE,
(CDockablePane**) &pTabbedBar);
pTabbedBar->GetUnderlyingWindow ()->EnableTabDetach (1, FALSE);
継承階層
必要条件
ヘッダー : afxTabbedPane.h