CTabbedPane クラス
切り離し可能なタブを持つペインの機能を実装します。
または、Visual Studio インストールの VC\atlmfc\src\mfc フォルダーにあるソース コードを参照してください。
構文
class CTabbedPane : public CBaseTabbedPane
メンバー
パブリック コンストラクター
名前 | 説明 |
---|---|
CTabbedPane::CTabbedPane |
既定のコンストラクターです。 |
パブリック メソッド
名前 | 説明 |
---|---|
CTabbedPane::D etachPane | ( をオーバーライドしますCBaseTabbedPane::D etachPane.) |
CTabbedPane::EnableTabAutoColor | タブの色の自動設定を有効または無効にします。 |
CTabbedPane::FloatTab | ペインが現在デタッチ可能なタブに存在する場合にのみ、ペインを浮動表示します ( CBaseTabbedPane::FloatTab をオーバーライドします)。 |
CTabbedPane::GetTabArea | タブ付きウィンドウ内のタブ領域のサイズと位置を返します。 |
CTabbedPane::GetTabWnd | |
CTabbedPane::HasAutoHideMode | タブ付きペインを AutoHide モードに切り替えられるかどうかを判断します。 ( をオーバーライドしますCBaseTabbedPane::HasAutoHideMode.) |
CTabbedPane::IsTabLocationBottom | タブがウィンドウの下部にあるかどうかを判断します。 |
CTabbedPane::ResetTabs | すべてのタブ付きペインを既定の状態にリセットします。 |
CTabbedPane::SetTabAutoColors | 色の自動設定機能が有効になっているときに使用できるカスタム色の一覧を設定します。 |
データ メンバー
名前 | 説明 |
---|---|
CTabbedPane::m_bTabsAlwaysTop | アプリケーション内のタブの既定の場所。 |
CTabbedPane::m_pTabWndRTC | カスタムの CMFCTabCtrl から派生したオブジェクトに関するランタイム クラス情報。 |
解説
2 つ目のペインのキャプションをポイントして、ユーザーがあるペインを別のペインにアタッチすると、フレームワークにより自動的にこのクラスのインスタンスが作成されます。 -1 の ID を持つフレームワークにより作成される、すべてのタブ付きペイン。
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);
タブ付きコントロール バー オブジェクトを作成するもう 1 つの方法は、 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);
継承階層
要件
Header: afxTabbedPane.h
CTabbedPane::D etachPane
virtual BOOL DetachPane(
CWnd* pBar,
BOOL bHide = FALSE);
パラメーター
[入力] pBar
[in] bHide
戻り値
解説
CTabbedPane::EnableTabAutoColor
タブの色の自動設定を有効または無効にします。
static void EnableTabAutoColor(BOOL bEnable = TRUE);
パラメーター
bEnable
[in]タブの自動色分けを有効にする場合は TRUE。それ以外の場合は FALSE。
解説
この静的メソッドを使用して、アプリケーション内のすべてのタブ付きペインでタブの自動色分けを有効または無効にします。 この機能を有効にすると、各タブは独自の色で塗りつぶされます。 CMFCBaseTabCtrl::GetAutoColors メソッドを呼び出して、タブの色を設定するために使用される色の一覧を見つけることができます。
タブに使用する色の一覧を指定するには、 CTabbedPane::SetTabAutoColors を呼び出します。
既定では、このオプションは無効になっています。
CTabbedPane::FloatTab
virtual BOOL FloatTab(
CWnd* pBar,
int nTabID,
AFX_DOCK_METHOD dockMethod,
BOOL bHide = FALSE);
パラメーター
[入力] pBar
[入力] nTabID
[入力] dockMethod
[in] bHide
戻り値
解説
CTabbedPane::GetTabArea
タブ付きウィンドウ内のタブ領域のサイズと位置を返します。
virtual void GetTabArea(
CRect& rectTabAreaTop,
CRect& rectTabAreaBottom) const;
パラメーター
rectTabAreaTop
[out]上部タブ領域のサイズと位置を画面座標で格納します。
rectTabAreaBottom
[out]下部タブ領域のサイズと位置を画面座標で格納します。
解説
フレームワークは、このメソッドを呼び出して、ユーザーがドラッグしているウィンドウをドッキングする方法を決定します。 ユーザーがターゲット ウィンドウのタブ領域の上にウィンドウをドラッグすると、フレームワークは、それをターゲット ウィンドウの新しいタブとして追加しようとします。 それ以外の場合は、ウィンドウをターゲット ペインの横にドッキングしようとします。これには、2 つのペインを区切るウィンドウ分割線を含む新しいペイン コンテナーの作成が含まれます。
この動作を変更するには、 CTabbedPane
派生クラスでこのメソッドをオーバーライドします。
CTabbedPane::GetTabWnd
CMFCTabCtrl* GetTabWnd() const;
戻り値
解説
CTabbedPane::HasAutoHideMode
virtual BOOL HasAutoHideMode() const;
戻り値
解説
CTabbedPane::IsTabLocationBottom
タブがウィンドウの下部にあるかどうかを判断します。
virtual BOOL IsTabLocationBottom() const;
戻り値
タブ領域がタブ付きウィンドウの下部にある場合は TRUE。それ以外の場合は FALSE。
解説
CTabbedPane::m_bTabsAlwaysTop
アプリケーション内のタブの既定の場所。
AFX_IMPORT_DATA static BOOL m_bTabsAlwaysTop;
解説
この静的メンバーを TRUE に設定すると、アプリケーション内のすべてのタブがタブ付きペインの上部に強制的に表示されます。
タブ付きペインが作成される前に、この値を設定する必要があります。
既定値は FALSE です。
CTabbedPane::m_pTabWndRTC
カスタムの CMFCTabCtrl
から派生したオブジェクトに関するランタイム クラス情報。
AFX_IMPORT_DATA static CRuntimeClass* m_pTabWndRTC;
解説
タブ付きペイン内でカスタム タブ付きウィンドウを使用している場合は、この静的メンバー変数を CMFCTabCtrl
派生オブジェクトのランタイム クラス情報へのポインターに設定します。
CTabbedPane::ResetTabs
すべてのタブ付きペインを既定の状態にリセットします。
static void ResetTabs();
解説
タブ付きペインをすべて既定の状態に戻すには、このメソッドを呼び出します。 このメソッドを呼び出すと、すべてのタブ付きペインの境界線のサイズと自動色の状態がリセットされます。
CTabbedPane::SetTabAutoColors
自動色機能が有効な場合に使用されるカスタム 色の一覧を設定します。
static void SetTabAutoColors(const CArray<COLORREF, COLORREF>& arColors);
パラメーター
arColors
[in]設定する色の配列を格納します。
解説
自動色機能が有効になっているときに使用される色の一覧をカスタマイズするには、このメソッドを使用します。 これは静的関数であり、アプリケーション内のすべてのタブ付きペインに影響します。
CTabbedPane::EnableTabAutoColor を使用して、自動カラー機能を有効または無効にします。
関連項目
階層図
クラス
CDockablePane クラス
CBaseTabbedPane クラス
CMFCOutlookBar クラス