次の方法で共有


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);

継承階層

CObject

CCmdTarget

CWnd

CBasePane

CPane

CDockablePane

CBaseTabbedPane

CTabbedPane

要件

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 クラス