Share via


CTabbedPane, classe

Implémente les fonctionnalités d'un volet à onglets détachables.

ou plus de détails, consultez le code source situé dans le dossier VC\atlmfc\src\mfc de votre installation de Visual Studio.

Syntaxe

class CTabbedPane : public CBaseTabbedPane

Membres

Constructeurs publics

Nom Description
CTabbedPane::CTabbedPane Constructeur par défaut.

Méthodes publiques

Nom Description
CTabbedPane ::D etachPane (Remplacements CBaseTabbedPane ::D etachPane.)
CTabbedPane ::EnableTabAutoColor Active ou désactive la coloration automatique des onglets.
CTabbedPane ::FloatTab Flotte un volet, mais uniquement si le volet réside actuellement dans un onglet détachable. (Remplace CBaseTabbedPane ::FloatTab.)
CTabbedPane ::GetTabArea Retourne la taille et la position de la zone d'onglet dans la fenêtre à onglets.
CTabbedPane ::GetTabWnd
CTabbedPane ::HasAutoHideMode Détermine si le volet à onglets peut passer en mode masquage automatique. (Remplacements CBaseTabbedPane ::HasAutoHideMode.)
CTabbedPane ::IsTabLocationBottom Détermine si les onglets sont situés au bas de la fenêtre.
CTabbedPane ::ResetTabs Rétablit l'état par défaut de tous les volets à onglets.
CTabbedPane ::SetTabAutoColors Définit une liste de couleurs personnalisées qui peuvent être utilisées quand la fonctionnalité de couleur automatique est activée.

Données membres

Nom Description
CTabbedPane ::m_bTabsAlwaysTop Emplacement par défaut des onglets dans l'application.
CTabbedPane ::m_pTabWndRTC Informations de classe runtime pour un objet dérivé de CMFCTabCtrl personnalisé.

Notes

L'infrastructure crée automatiquement une instance de cette classe quand un utilisateur attache un volet à un autre en pointant vers la légende du deuxième volet. Tous les volets à onglets créés par l'infrastructure ont un ID égal à -1.

Pour spécifier des onglets standard au lieu des onglets de style Outlook, passez le style AFX_CBRS_REGULAR_TABS à la méthode CDockablePane ::CreateEx .

Si vous créez un volet à onglets avec des onglets détachables, le volet risque d’être détruit automatiquement par l’infrastructure. Il est donc déconseillé de stocker le pointeur. Pour obtenir un pointeur vers le volet à onglets, appelez la méthode CBasePane::GetParentTabbedPane.

Exemples

Dans cet exemple, nous créons un objet CTabbedPane. Ensuite, nous utilisons CBaseTabbedPane ::AddTab pour attacher des onglets supplémentaires.

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

Une autre façon de créer un objet de barre de contrôle tabulation consiste à utiliser CDockablePane ::AttachToTabWnd. La AttachToTabWnd méthode crée dynamiquement un objet de volet tabulation à l’aide des informations de classe runtime définies par CDockablePane ::SetTabbedPaneRTC.

Dans cet exemple, nous créons un volet à onglets de façon dynamique, joignons les deux onglets et rendons le deuxième onglet non détachable.

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

Hiérarchie d'héritage

CObject

CCmdTarget

CWnd

CBasePane

CPane

CDockablePane

CBaseTabbedPane

CTabbedPane

Spécifications

En-tête : afxTabbedPane.h

CTabbedPane ::D etachPane

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

Paramètres

[in] pBar

[in] bHide

Valeur de retour

Notes

CTabbedPane ::EnableTabAutoColor

Active ou désactive la coloration automatique des onglets.

static void EnableTabAutoColor(BOOL bEnable = TRUE);

Paramètres

bEnable
[in] TRUE pour activer la coloration automatique des onglets ; sinon, FALSE.

Notes

Utilisez cette méthode statique pour activer ou désactiver la coloration automatique des onglets dans tous les volets à onglets de l’application. Lorsque cette fonctionnalité est activée, chaque onglet est rempli par sa propre couleur. Vous trouverez la liste des couleurs utilisées pour colorer les onglets en appelant la méthode CMFCBaseTabCtrl ::GetAutoColors .

Vous pouvez spécifier la liste des couleurs qui seront utilisées pour les onglets en appelant CTabbedPane ::SetTabAutoColors.

Par défaut, cette option est désactivée.

CTabbedPane ::FloatTab

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

Paramètres

[in] pBar
[in] nTabID
[in] dockMethod
[in] bHide

Valeur de retour

Notes

CTabbedPane ::GetTabArea

Retourne la taille et la position de la zone de tabulation dans la fenêtre à onglets.

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

Paramètres

rectTabAreaTop
[out] Contient la taille et la position, dans les coordonnées de l’écran, de la zone d’onglet supérieure.

rectTabAreaBottom
[out] Contient la taille et la position, dans les coordonnées de l’écran, de la zone d’onglet inférieure.

Notes

L’infrastructure appelle cette méthode pour déterminer comment ancrer un volet qu’un utilisateur fait glisser. Lorsque l’utilisateur fait glisser un volet sur la zone d’onglet du volet cible, l’infrastructure tente de l’ajouter sous la forme d’un nouvel onglet du volet cible. Sinon, il tente d’ancrer le volet sur le côté du volet cible, ce qui implique la création d’un conteneur de volets avec un séparateur de volet qui sépare les deux volets.

Remplacez cette méthode dans une CTabbedPaneclasse dérivée -pour modifier ce comportement.

CTabbedPane ::GetTabWnd

CMFCTabCtrl* GetTabWnd() const;

Valeur de retour

Notes

CTabbedPane ::HasAutoHideMode

virtual BOOL HasAutoHideMode() const;

Valeur de retour

Notes

CTabbedPane ::IsTabLocationBottom

Détermine si les onglets sont situés au bas de la fenêtre.

virtual BOOL IsTabLocationBottom() const;

Valeur de retour

TRUE si la zone d’onglet se trouve en bas de la fenêtre à onglets ; sinon, FALSE.

Notes

CTabbedPane ::m_bTabsAlwaysTop

Emplacement par défaut des onglets dans l'application.

AFX_IMPORT_DATA static BOOL m_bTabsAlwaysTop;

Notes

Définissez ce membre statique sur TRUE pour forcer l’affichage de tous les onglets de l’application en haut du volet à onglets.

Vous devez définir cette valeur avant la création d’un volet à onglets.

La valeur par défaut est FALSE.

CTabbedPane ::m_pTabWndRTC

Informations de classe runtime pour un objet dérivé de CMFCTabCtrl personnalisé.

AFX_IMPORT_DATA static CRuntimeClass* m_pTabWndRTC;

Notes

Définissez cette variable membre statique sur un pointeur vers les informations de classe runtime d’un CMFCTabCtrlobjet dérivé si vous utilisez une fenêtre à onglets personnalisée à l’intérieur d’un volet à onglets.

CTabbedPane ::ResetTabs

Rétablit l'état par défaut de tous les volets à onglets.

static void ResetTabs();

Notes

Appelez cette méthode pour rétablir l’état par défaut de tous les volets à onglets. Quand elle est appelée, cette méthode réinitialise les tailles de bordure et l’état de couleur automatique de tous les volets à onglets.

CTabbedPane ::SetTabAutoColors

Définit une liste de couleurs personnalisées utilisées lorsque la fonctionnalité de couleur automatique est activée.

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

Paramètres

arColors
[in] Contient le tableau de couleurs à définir.

Notes

Utilisez cette méthode pour personnaliser la liste des couleurs utilisées lorsque la fonctionnalité de couleur automatique est activée. Il s’agit d’une fonction statique et affecte tous les volets à onglets de votre application.

Utilisez CTabbedPane ::EnableTabAutoColor pour activer ou désactiver la fonctionnalité de couleur automatique.

Voir aussi

Graphique hiérarchique
Classes
CDockablePane, classe
CBaseTabbedPane, classe
CMFCOutlookBar, classe