Udostępnij za pośrednictwem


Klasa CTabbedPane

Implementuje funkcjonalność okienka z kartami odłączanymi.

lub więcej szczegółów można znaleźć w kodzie źródłowym znajdującym się w folderze VC\atlmfc\src\mfc instalacji programu Visual Studio.

Składnia

class CTabbedPane : public CBaseTabbedPane

Elementy członkowskie

Konstruktory publiczne

Nazwa/nazwisko opis
CTabbedPane::CTabbedPane Konstruktor domyślny.

Metody publiczne

Nazwa/nazwisko opis
CTabbedPane::D etachPane (Przesłonięcia) CBaseTabbedPane::D etachPane.)
CTabbedPane::EnableTabAutoColor Włącza lub wyłącza automatyczne kolorowanie kart.
CTabbedPane::FloatTab Unosi okienko, ale tylko wtedy, gdy okienko znajduje się obecnie na odłączanej karcie. (Zastępuje CBaseTabbedPane::FloatTab).)
CTabbedPane::GetTabArea Zwraca rozmiar i położenie obszaru karty w oknie z kartami.
CTabbedPane::GetTabWnd
CTabbedPane::HasAutoHideMode Określa, czy okienko z kartami można przełączyć do trybu automatycznego ukrywania. (Przesłonięcia) CBaseTabbedPane::HasAutoHideMode.)
CTabbedPane::IsTabLocationBottom Określa, czy karty znajdują się w dolnej części okna.
CTabbedPane::ResetTabs Resetuje wszystkie okienka z kartami do stanu domyślnego.
CTabbedPane::SetTabAutoColors Ustawia listę kolorów niestandardowych, które mogą być używane po włączeniu funkcji automatycznego koloru.

Składowe danych

Nazwa/nazwisko opis
CTabbedPane::m_bTabsAlwaysTop Domyślna lokalizacja kart w aplikacji.
CTabbedPane::m_pTabWndRTC Informacje o klasie środowiska uruchomieniowego dla niestandardowego CMFCTabCtrlobiektu pochodnego.

Uwagi

Platforma automatycznie tworzy wystąpienie tej klasy, gdy użytkownik dołącza jedno okienko do drugiego, wskazując podpis drugiego okienka. Wszystkie okienka z kartami utworzone przez platformę mają identyfikator -1.

Aby określić zwykłe karty zamiast kart w stylu programu Outlook, przekaż styl AFX_CBRS_REGULAR_TABS do metody CDockablePane::CreateEx .

Jeśli utworzysz okienko z kartami z odłączanymi kartami, okienko może zostać automatycznie zniszczone przez strukturę, dlatego nie należy przechowywać wskaźnika. Aby uzyskać wskaźnik do okienka z kartami, wywołaj metodę CBasePane::GetParentTabbedPane .

Przykłady

W tym przykładzie utworzymy CTabbedPane obiekt. Następnie użyjemy CBaseTabbedPane::AddTab , aby dołączyć dodatkowe karty.

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

Innym sposobem utworzenia obiektu paska sterowania z kartą jest użycie CDockablePane::AttachToTabWnd. Metoda AttachToTabWnd dynamicznie tworzy obiekt okienka z kartami przy użyciu informacji o klasie środowiska uruchomieniowego ustawionych przez CDockablePane::SetTabbedPaneRTC.

W tym przykładzie dynamicznie tworzymy okienko z kartami, dołączamy dwie karty i nie można odłączyć drugiej karty.

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

Hierarchia dziedziczenia

Obiekt CObject

CCmdTarget

CWnd

CBasePane

CPane

CDockablePane

CBaseTabbedPane

CTabbedPane

Wymagania

Nagłówek: afxTabbedPane.h

CTabbedPane::D etachPane

virtual BOOL DetachPane(
    CWnd* pBar,
    BOOL bHide = FALSE);

Parametry

[in] Pasek p

[in] bHide

Wartość zwracana

Uwagi

CTabbedPane::EnableTabAutoColor

Włącza lub wyłącza automatyczne kolorowanie kart.

static void EnableTabAutoColor(BOOL bEnable = TRUE);

Parametry

bEnable
[in] WARTOŚĆ TRUE w celu włączenia automatycznego kolorowania kart; w przeciwnym razie, FAŁSZ.

Uwagi

Użyj tej metody statycznej, aby włączyć lub wyłączyć automatyczne kolorowanie kart we wszystkich okienkach z kartami w aplikacji. Po włączeniu tej funkcji każda karta jest wypełniana własnym kolorem. Listę kolorów używanych do kolorowania kart można znaleźć, wywołując metodę CMFCBaseTabCtrl::GetAutoColors .

Listę kolorów, które będą używane dla kart, można określić, wywołując element CTabbedPane::SetTabAutoColors.

Domyślnie ta opcja jest wyłączona.

CTabbedPane::FloatTab

virtual BOOL FloatTab(
    CWnd* pBar,
    int nTabID,
    AFX_DOCK_METHOD dockMethod,
    BOOL bHide = FALSE);

Parametry

[in] Pasek p
[in] nTabID
[in] dockMethod
[in] bHide

Wartość zwracana

Uwagi

CTabbedPane::GetTabArea

Zwraca rozmiar i położenie obszaru karty w oknie z kartami.

virtual void GetTabArea(
    CRect& rectTabAreaTop,
    CRect& rectTabAreaBottom) const;

Parametry

rectTabAreaTop
[out] Zawiera rozmiar i położenie w współrzędnych ekranu górnego obszaru karty.

rectTabAreaBottom
[out] Zawiera rozmiar i położenie na współrzędnych ekranu w dolnym obszarze karty.

Uwagi

Struktura wywołuje tę metodę, aby określić sposób zadokowania okienka przeciąganego przez użytkownika. Gdy użytkownik przeciąga okienko na obszar karty okienka docelowego, platforma próbuje dodać ją jako nową kartę okienka docelowego. W przeciwnym razie próbuje zadokować okienko po stronie okienka docelowego, co polega na utworzeniu nowego kontenera okienka z podziałem okienka, który oddziela dwa okienka.

Zastąp tę metodę w klasie -pochodnej CTabbedPane, aby zmienić to zachowanie.

CTabbedPane::GetTabWnd

CMFCTabCtrl* GetTabWnd() const;

Wartość zwracana

Uwagi

CTabbedPane::HasAutoHideMode

virtual BOOL HasAutoHideMode() const;

Wartość zwracana

Uwagi

CTabbedPane::IsTabLocationBottom

Określa, czy karty znajdują się w dolnej części okna.

virtual BOOL IsTabLocationBottom() const;

Wartość zwracana

WARTOŚĆ TRUE, jeśli obszar karty znajduje się w dolnej części okna z kartami; w przeciwnym razie, FAŁSZ.

Uwagi

CTabbedPane::m_bTabsAlwaysTop

Domyślna lokalizacja kart w aplikacji.

AFX_IMPORT_DATA static BOOL m_bTabsAlwaysTop;

Uwagi

Ustaw ten statyczny element członkowski na wartość TRUE, aby wymusić wyświetlanie wszystkich kart w aplikacji w górnej części okienka z kartami.

Tę wartość należy ustawić przed utworzeniem okienka z kartami.

Wartość domyślna to FALSE.

CTabbedPane::m_pTabWndRTC

Informacje o klasie środowiska uruchomieniowego dla niestandardowego CMFCTabCtrlobiektu pochodnego.

AFX_IMPORT_DATA static CRuntimeClass* m_pTabWndRTC;

Uwagi

Ustaw tę statyczną zmienną składową na wskaźnik na informacje o klasie środowiska uruchomieniowego obiektu pochodnego CMFCTabCtrl, jeśli używasz niestandardowego okna z kartami wewnątrz okienka z kartami.

CTabbedPane::ResetTabs

Resetuje wszystkie okienka z kartami do stanu domyślnego.

static void ResetTabs();

Uwagi

Wywołaj tę metodę, aby przywrócić wszystkie okienka z kartami do stanu domyślnego. Po wywołaniu ta metoda resetuje rozmiary obramowania i stan automatycznego koloru wszystkich okienek z kartami.

CTabbedPane::SetTabAutoColors

Ustawia listę kolorów niestandardowych używanych podczas włączania funkcji automatycznego koloru.

static void SetTabAutoColors(const CArray<COLORREF, COLORREF>& arColors);

Parametry

arColors
[in] Zawiera tablicę kolorów do ustawienia.

Uwagi

Użyj tej metody, aby dostosować listę kolorów używanych podczas włączania funkcji automatycznego koloru. Jest to funkcja statyczna i wpływa na wszystkie okienka z kartami w aplikacji.

Użyj CTabbedPane::EnableTabAutoColor , aby włączyć lub wyłączyć funkcję automatycznego koloru.

Zobacz też

Wykres hierarchii
Klasy
Klasa CDockablePane
Klasa CBaseTabbedPane
Klasa CMFCOutlookBar