Création du contrôle onglet
La création du contrôle d'onglet dépend de l'utilisation du contrôle dans une boîte de dialogue ou dans une fenêtre sans boîte de dialogue.
Pour utiliser CTabCtrl directement dans une boîte de dialogue
Dans l'éditeur de boîtes de dialogue, ajoutez un contrôle d'onglet dans votre ressource de modèle de dialogue. Spécifiez son ID de contrôle
Utilisez l'Assistant d'Ajout d'attribut pour ajouter un attribut de type CTabCtrl avec la propriété de contrôle. Vous pouvez utiliser ce membre pour appeler des méthodes CTabCtrl.
Fonctions gestionnaires de la carte dans la classe de dialogue pour tous les messages de notification de contrôle onglet à traiter. Pour plus d'informations, consultez Mappage de messages en fonctions.
Dans OnInitDialog, définissez les styles pour CTabCtrl.
Pour utiliser CTabCtrl dans une fenêtre sans dialogue.
Définissez le contrôle d'une classe vue ou fenêtre.
Appelez la méthode Create du contrôle, éventuellement dans OnInitialUpdate, éventuellement dans la fonction gestionnaire OnCreate de la fenêtre parente (si vous sous-classez le contrôle). Définissez les styles pour le contrôle.
Une fois que l'objet CTabCtrl a été créé, vous pouvez définir ou supprimer les styles étendus suivants :
TCS_EX_FLATSEPARATORS Le contrôle onglet dessinera des séparateurs entre les éléments de l'onglet. Ce style étendu affecte uniquement les contrôles onglet avec les styles TCS_BUTTONS et TCS_FLATBUTTONS. Par défaut, créer le contrôle onglet avec le style TCS_FLATBUTTONS définit le style étendu.
TCS_EX_REGISTERDROP Le contrôle onglet génère des messages de notification de TCN_GETOBJECT pour demander un objet de suppression de cible lorsqu'un objet est déplacé sur les éléments de l'onglet dans le contrôle.
Notes
Pour recevoir une notification de TCN_GETOBJECT, vous devez initialiser les bibliothèques OLE par un appel à AfxOleInit.
Ces styles peuvent être récupérés et définis, une fois le contrôle créé, avec des appels respectifs aux méthodes GetExtendedStyle et SetExtendedStyle.
Par exemple, définissez le style TCS_EX_FLATSEPARATORS avec les lignes de code suivantes :
DWORD dwExStyle= m_TabCtrl.GetExtendedStyle();
m_TabCtrl.SetExtendedStyle(dwExStyle | TCS_EX_FLATSEPARATORS);
Désactivez le style TCS_EX_FLATSEPARATORS d'un objet CTabCtrl avec les lignes de code suivantes :
DWORD dwExStyle= m_TabCtrl.GetExtendedStyle();
m_TabCtrl.SetExtendedStyle(dwExStyle & ~TCS_EX_FLATSEPARATORS);
Cela supprime les séparateurs qui apparaissent entre les boutons de votre objet CTabCtrl.