La classe CToolBar
Barres de contrôles contenant une ligne de boutons bitmap et des séparateurs facultatifs.
Syntaxe
class CToolBar : public CControlBar
Membres
Constructeurs publics
Nom | Description |
---|---|
CToolBar::CToolBar |
Construit un objet CToolBar . |
Méthodes publiques
Nom | Description |
---|---|
CToolBar::CommandToIndex |
Retourne l’index d’un bouton avec l’ID de commande donné. |
CToolBar::Create |
Crée la barre d’outils Windows et l’attache à l’objet CToolBar . |
CToolBar::CreateEx |
Crée un CToolBar objet avec des styles supplémentaires pour l’objet incorporé CToolBarCtrl . |
CToolBar::GetButtonInfo |
Récupère l’ID, le style et le numéro d’image d’un bouton. |
CToolBar::GetButtonStyle |
Récupère le style d’un bouton. |
CToolBar::GetButtonText |
Récupère le texte qui s’affiche sur un bouton. |
CToolBar::GetItemID |
Retourne l’ID de commande d’un bouton ou d’un séparateur à l’index donné. |
CToolBar::GetItemRect |
Récupère le rectangle d’affichage de l’élément à l’index donné. |
CToolBar::GetToolBarCtrl |
Autorise l’accès direct au contrôle commun sous-jacent. |
CToolBar::LoadBitmap |
Charge l’image bitmap contenant des images de bouton bitmap. |
CToolBar::LoadToolBar |
Charge une ressource de barre d’outils créée avec l’éditeur de ressources. |
CToolBar::SetBitmap |
Définit une image bitmap. |
CToolBar::SetButtonInfo |
Définit l’ID, le style et le numéro d’image d’un bouton. |
CToolBar::SetButtons |
Définit les styles de bouton et un index d’images de bouton dans la bitmap. |
CToolBar::SetButtonStyle |
Définit le style d’un bouton. |
CToolBar::SetButtonText |
Définit le texte qui s’affiche sur un bouton. |
CToolBar::SetHeight |
Définit la hauteur de la barre d’outils. |
CToolBar::SetSizes |
Définit les tailles des boutons et leurs bitmaps. |
Notes
Les boutons peuvent agir comme des boutons pushbuttons, des cases à cocher ou des cases d’option. CToolBar
les objets sont généralement des membres incorporés d’objets frame-window dérivés de la classe CFrameWnd
ou CMDIFrameWnd
.
CToolBar::GetToolBarCtrl
, une fonction membre nouvelle dans MFC 4.0 vous permet de tirer parti de la prise en charge du contrôle commun Windows pour la personnalisation de la barre d’outils et des fonctionnalités supplémentaires. CToolBar
les fonctions membres vous donnent la plupart des fonctionnalités des contrôles courants Windows ; Toutefois, lorsque vous appelez GetToolBarCtrl
, vous pouvez donner à vos barres d’outils encore plus les caractéristiques des barres d’outils Windows 95/98. Lorsque vous appelez GetToolBarCtrl
, il retourne une référence à un CToolBarCtrl
objet. Pour plus d’informations sur la conception de barres d’outils à l’aide de contrôles courants Windows, consultez CToolBarCtrl
cette rubrique. Pour plus d’informations générales sur les contrôles courants, consultez Contrôles communs dans le Kit de développement logiciel (SDK) Windows.
Visual C++ vous fournit deux méthodes pour créer une barre d’outils. Pour créer une ressource de barre d’outils à l’aide de l’Éditeur de ressources, procédez comme suit :
Créez une ressource de barre d’outils.
Construisez l’objet
CToolBar
.Appelez la
Create
fonction (ouCreateEx
) pour créer la barre d’outils Windows et l’attacher à l’objetCToolBar
.Appelez
LoadToolBar
pour charger la ressource de barre d’outils.
Dans le cas contraire, procédez ainsi :
Construisez l’objet
CToolBar
.Appelez la
Create
fonction (ouCreateEx
) pour créer la barre d’outils Windows et l’attacher à l’objetCToolBar
.Appelez
LoadBitmap
pour charger la bitmap qui contient les images du bouton de barre d’outils.Appelez
SetButtons
pour définir le style de bouton et associer chaque bouton à une image dans la bitmap.
Toutes les images de bouton de la barre d’outils sont extraites d’une image bitmap, qui doit contenir une image pour chaque bouton. Toutes les images doivent être de la même taille ; la valeur par défaut est de 16 pixels de large et de 15 pixels de haut. Les images doivent être côte à côte dans la bitmap.
La SetButtons
fonction prend un pointeur vers un tableau d’ID de contrôle et un entier qui spécifie le nombre d’éléments dans le tableau. La fonction définit l’ID de chaque bouton sur la valeur de l’élément correspondant du tableau et affecte à chaque bouton un index d’image, qui spécifie la position de l’image du bouton dans la bitmap. Si un élément de tableau a la valeur ID_SEPARATOR
, aucun index d’image n’est affecté.
L’ordre des images dans la bitmap est généralement l’ordre dans lequel elles sont dessinées à l’écran, mais vous pouvez utiliser la fonction pour modifier la SetButtonInfo
relation entre l’ordre d’image et l’ordre de dessin.
Tous les boutons d’une barre d’outils sont de la même taille. La valeur par défaut est de 24 x 22 pixels, conformément aux instructions de l’interface Windows pour la conception logicielle. Tout espace supplémentaire entre l’image et les dimensions du bouton est utilisé pour former une bordure autour de l’image.
Chaque bouton a une image. Les différents états et styles de bouton (appuyés, haut, bas, désactivés, désactivés et indéterminés) sont générés à partir de cette image. Bien que les bitmaps puissent être n’importe quelle couleur, vous pouvez obtenir les meilleurs résultats avec des images en noir et des nuances de gris.
Avertissement
CToolBar
prend en charge les bitmaps avec un maximum de 16 couleurs. Lorsque vous chargez une image dans un éditeur de barre d’outils, Visual Studio convertit automatiquement l’image en bitmap de 16 couleurs, si nécessaire, et affiche un message d’avertissement si l’image a été convertie. Si vous utilisez une image avec plus de 16 couleurs (à l’aide d’un éditeur externe pour modifier l’image), l’application peut se comporter de manière inattendue.
Les boutons de barre d’outils imitent les boutons push par défaut. Toutefois, les boutons de barre d’outils peuvent également imiter les cases à cocher ou les cases d’option. Les boutons de case à cocher ont trois états : activé, effacé et indéterminé. Les cases d’option n’ont que deux états : activé et effacé.
Pour définir un bouton ou un style séparateur individuel sans pointer vers un tableau, appelez GetButtonStyle
pour récupérer le style, puis appelez SetButtonStyle
au lieu de SetButtons
. SetButtonStyle
est le plus utile lorsque vous souhaitez modifier le style d’un bouton au moment de l’exécution.
Pour affecter du texte à afficher sur un bouton, appelez GetButtonText
pour récupérer le texte à afficher sur le bouton, puis appelez SetButtonText
pour définir le texte.
Pour créer un bouton de case à cocher, affectez-le au style TBBS_CHECKBOX
ou utilisez la fonction membre d’un CCmdUI
SetCheck
objet dans un ON_UPDATE_COMMAND_UI
gestionnaire. L’appel SetCheck
transforme un bouton pushbutton en un bouton de case à cocher. Passez SetCheck
un argument de 0 pour désactivé, 1 pour activé ou 2 pour indéterminé.
Pour créer une case d’option, appelez la fonction membre d’un CCmdUI
SetRadio
objet à partir d’un ON_UPDATE_COMMAND_UI
gestionnaire. Passez SetRadio
un argument de 0 pour désactivé ou différent de zéro pour la vérification. Pour fournir le comportement mutuellement exclusif d’un groupe radio, vous devez disposer ON_UPDATE_COMMAND_UI
de gestionnaires pour tous les boutons du groupe.
Pour plus d’informations sur l’utilisation CToolBar
, consultez l’article Implémentation de la barre d’outils MFC et Note technique 31 : Barres de contrôle.
Hiérarchie d'héritage
CToolBar
Spécifications
En-tête : afxext.h
CToolBar::CommandToIndex
Cette fonction membre retourne l’index du premier bouton de barre d’outils, en commençant à la position 0, dont l’ID de commande correspond nIDFind
.
int CommandToIndex(UINT nIDFind) const;
Paramètres
nIDFind
ID de commande d’un bouton de barre d’outils.
Valeur de retour
Index du bouton ou -1 si aucun bouton n’a l’ID de commande donné.
CToolBar::Create
Cette fonction membre crée une barre d’outils Windows (fenêtre enfant) et l’associe à l’objet CToolBar
.
virtual BOOL Create(
CWnd* pParentWnd,
DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_TOP,
UINT nID = AFX_IDW_TOOLBAR);
Paramètres
pParentWnd
Pointeur vers la fenêtre qui est le parent de la barre d’outils.
dwStyle
Style de barre d’outils. Les styles de barre d’outils supplémentaires pris en charge sont les suivants :
CBRS_TOP
La barre de contrôle se trouve en haut de la fenêtre frame.CBRS_BOTTOM
La barre de contrôle se trouve en bas de la fenêtre frame.CBRS_NOALIGN
La barre de contrôle n’est pas repositionnée lorsque le parent est redimensionné.CBRS_TOOLTIPS
La barre de contrôle affiche des info-bulles.CBRS_SIZE_DYNAMIC
La barre de contrôle est dynamique.CBRS_SIZE_FIXED
La barre de contrôle est fixe.CBRS_FLOATING
La barre de contrôle est flottante.CBRS_FLYBY
La barre d’état affiche des informations sur le bouton.CBRS_HIDE_INPLACE
La barre de contrôle n’est pas affichée à l’utilisateur.
nID
ID de la fenêtre enfant de la barre d’outils.
Valeur de retour
Valeur différente de zéro cas de réussite ; sinon, 0.
Notes
Elle définit également la hauteur de la barre d’outils sur une valeur par défaut.
Exemple
// This code fragment is taken from CMainFrame::OnCreate
// CMainFrame is derived from CMDIFrameWnd.
//This example creates a dockable toolbar.
if (!m_wndToolBar.Create(this) ||
!m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}
//Make the toolbar dockable
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndToolBar);
CToolBar::CreateEx
Appelez cette fonction pour créer une barre d’outils Windows (fenêtre enfant) et l’associer à l’objet CToolBar
.
virtual BOOL CreateEx(
CWnd* pParentWnd,
DWORD dwCtrlStyle = TBSTYLE_FLAT,
DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_ALIGN_TOP,
CRect rcBorders = CRect(
0,
0,
0,
0),
UINT nID = AFX_IDW_TOOLBAR);
Paramètres
pParentWnd
Pointeur vers la fenêtre qui est le parent de la barre d’outils.
dwCtrlStyle
Styles supplémentaires pour la création de l’objet incorporé CToolBarCtrl
. par défaut, cette valeur est définie sur TBSTYLE_FLAT
. Pour obtenir la liste complète des styles de barre d’outils, consultez dwStyle
.
dwStyle
Style de barre d’outils. Consultez Le contrôle de barre d’outils et les styles de bouton dans le Kit de développement logiciel (SDK) Windows pour obtenir la liste des styles appropriés.
rcBorders
Objet CRect
qui définit les largeurs des bordures de la fenêtre de barre d’outils. Ces bordures sont définies sur 0,0,0,0 par défaut, ce qui entraîne une fenêtre de barre d’outils sans bordures.
nID
ID de la fenêtre enfant de la barre d’outils.
Valeur de retour
Valeur différente de zéro cas de réussite ; sinon, 0.
Notes
Elle définit également la hauteur de la barre d’outils sur une valeur par défaut.
Utilisez CreateEx
, au lieu de Create
, quand certains styles doivent être présents lors de la création du contrôle de barre d’outils incorporée. Par exemple, définissez dwCtrlStyle
la valeur pour TBSTYLE_FLAT | TBSTYLE_TRANSPARENT
créer une barre d’outils qui ressemble aux barres d’outils Internet Explorer 4.
Exemple
// This example demonstrates CToolBar::CreateEx by creating a
// toolbar as part of a child frame window. It also calls the
// LoadToolbar and EnableDocking functions
int CChildFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CMDIChildWnd::OnCreate(lpCreateStruct) == -1)
return -1;
if (!m_wndMyToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_wndMyToolBar.LoadToolBar(IDR_MYTOOLBAR))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}
m_wndMyToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndMyToolBar);
return 0;
}
CToolBar::CToolBar
Cette fonction membre construit un CToolBar
objet et définit les tailles par défaut.
CToolBar();
Notes
Appelez la Create
fonction membre pour créer la fenêtre de barre d’outils.
CToolBar::GetButtonInfo
Cette fonction membre récupère l’ID de contrôle, le style et l’index d’image du bouton de barre d’outils ou du séparateur à l’emplacement spécifié par nIndex
.
void GetButtonInfo(
int nIndex,
UINT& nID,
UINT& nStyle,
int& iImage) const;
Paramètres
nIndex
Index du bouton ou du séparateur de la barre d’outils dont les informations doivent être récupérées.
nID
Référence à un UINT défini sur l’ID de commande du bouton.
nStyle
Référence à un UINT défini sur le style du bouton.
iImage
Référence à un entier défini sur l’index de l’image du bouton dans la bitmap.
Notes
Ces valeurs sont affectées aux variables référencées par nID
, nStyle
et iImage
. L’index d’image est la position de l’image dans la bitmap qui contient des images pour tous les boutons de barre d’outils. La première image est à la position 0.
Si nIndex
elle spécifie un séparateur, iImage
est définie sur la largeur du séparateur en pixels.
CToolBar::GetButtonStyle
Appelez cette fonction membre pour récupérer le style d’un bouton ou d’un séparateur dans la barre d’outils.
UINT GetButtonStyle(int nIndex) const;
Paramètres
nIndex
Index du bouton de barre d’outils ou du style séparateur à récupérer.
Valeur de retour
Style du bouton ou du séparateur spécifié par nIndex
.
Notes
Le style d’un bouton détermine la façon dont le bouton s’affiche et comment il répond à l’entrée utilisateur. Consultez SetButtonStyle
des exemples de styles de bouton.
CToolBar::GetButtonText
Appelez cette fonction membre pour récupérer le texte qui apparaît sur un bouton.
CString GetButtonText(int nIndex) const;
void GetButtonText(
int nIndex,
CString& rString) const;
Paramètres
nIndex
Index du texte à récupérer.
rString
Référence à un CString
objet qui contiendra le texte à récupérer.
Valeur de retour
Objet CString
contenant le texte du bouton.
Notes
La deuxième forme de cette fonction membre remplit un CString
objet avec le texte de chaîne.
CToolBar::GetItemID
Cette fonction membre retourne l’ID de commande du bouton ou du séparateur spécifié par nIndex
.
UINT GetItemID(int nIndex) const;
Paramètres
nIndex
Index de l’élément dont l’ID doit être récupéré.
Valeur de retour
ID de commande du bouton ou du séparateur spécifié par nIndex
.
Notes
Les séparateurs retournent ID_SEPARATOR
.
CToolBar::GetItemRect
Cette fonction membre remplit la structure dont l’adresse RECT
est contenue avec lpRect
les coordonnées du bouton ou du séparateur spécifié par nIndex
.
virtual void GetItemRect(
int nIndex,
LPRECT lpRect) const;
Paramètres
nIndex
Index de l’élément (bouton ou séparateur) dont les coordonnées de rectangle doivent être récupérées.
lpRect
Adresse de la RECT
structure qui contiendra les coordonnées de l’élément.
Notes
Les coordonnées sont en pixels par rapport au coin supérieur gauche de la barre d’outils.
Permet GetItemRect
d’obtenir les coordonnées d’un séparateur que vous souhaitez remplacer par une zone de liste modifiable ou un autre contrôle.
Exemple
Consultez l’exemple pour CToolBar::SetSizes
.
CToolBar::GetToolBarCtrl
Cette fonction membre permet un accès direct au contrôle commun sous-jacent.
CToolBarCtrl& GetToolBarCtrl() const;
Valeur de retour
Référence à un objet CToolBarCtrl
.
Notes
Permet GetToolBarCtrl
de tirer parti des fonctionnalités du contrôle commun de la barre d’outils Windows et de tirer parti de la prise en charge CToolBarCtrl
des fonctionnalités de personnalisation de la barre d’outils.
Pour plus d’informations sur l’utilisation de contrôles courants, consultez l’article Contrôles et contrôles communs dans le Kit de développement logiciel (SDK) Windows.
Exemple
// This code fragment is taken from CMainFrame::OnCreate
// CMainFrame is derived from CMDIFrameWnd.
//This example shows how to add text to toolbar buttons.
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE
| CBRS_TOP) || !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}
//Show text on toolbar buttons.
VERIFY(m_wndToolBar.SetButtonText(0, _T("New")));
VERIFY(m_wndToolBar.SetButtonText(1, _T("Open")));
VERIFY(m_wndToolBar.SetButtonText(2, _T("Save")));
VERIFY(m_wndToolBar.SetButtonText(4, _T("Cut")));
VERIFY(m_wndToolBar.SetButtonText(5, _T("Copy")));
VERIFY(m_wndToolBar.SetButtonText(6, _T("Paste")));
VERIFY(m_wndToolBar.SetButtonText(8, _T("Print")));
VERIFY(m_wndToolBar.SetButtonText(9, _T("About")));
CRect temp;
m_wndToolBar.GetItemRect(0, &temp);
m_wndToolBar.GetToolBarCtrl().SetButtonSize(CSize(temp.Width(),
temp.Height()));
CToolBar::LoadBitmap
Appelez cette fonction membre pour charger la bitmap spécifiée par lpszResourceName
ou nIDResource
.
BOOL LoadBitmap(LPCTSTR lpszResourceName);
BOOL LoadBitmap(UINT nIDResource);
Paramètres
lpszResourceName
Pointeur vers le nom de la ressource de la bitmap à charger.
nIDResource
ID de ressource de la bitmap à charger.
Valeur de retour
Valeur différente de zéro cas de réussite ; sinon, 0.
Notes
La bitmap doit contenir une image pour chaque bouton de barre d’outils. Si les images ne sont pas de la taille standard (16 pixels larges et 15 pixels haut), appelez SetSizes
pour définir les tailles de bouton et leurs images.
Avertissement
CToolBar
prend en charge les bitmaps avec un maximum de 16 couleurs. Lorsque vous chargez une image dans un éditeur de barre d’outils, Visual Studio convertit automatiquement l’image en bitmap de 16 couleurs, si nécessaire, et affiche un message d’avertissement si l’image a été convertie. Si vous utilisez une image avec plus de 16 couleurs (à l’aide d’un éditeur externe pour modifier l’image), l’application peut se comporter de manière inattendue.
CToolBar::LoadToolBar
Appelez cette fonction membre pour charger la barre d’outils spécifiée par lpszResourceName
ou nIDResource
.
BOOL LoadToolBar(LPCTSTR lpszResourceName);
BOOL LoadToolBar(UINT nIDResource);
Paramètres
lpszResourceName
Pointeur vers le nom de la ressource de la barre d’outils à charger.
nIDResource
ID de ressource de la barre d’outils à charger.
Valeur de retour
Valeur différente de zéro cas de réussite ; sinon, 0.
Notes
Pour plus d’informations sur la création d’une ressource de barre d’outils, consultez l’éditeur de barre d’outils.
Exemple
Consultez l’exemple pour CToolBar::CreateEx
.
CToolBar::SetBitmap
Appelez cette fonction membre pour définir l’image bitmap de la barre d’outils.
BOOL SetBitmap(HBITMAP hbmImageWell);
Paramètres
hbmImageWell
Handle d’une image bitmap associée à une barre d’outils.
Valeur de retour
Valeur différente de zéro cas de réussite ; sinon, 0.
Notes
Par exemple, appelez SetBitmap
pour modifier l’image bitmap après que l’utilisateur a lancé une action sur un document qui modifie l’action d’un bouton.
CToolBar::SetButtonInfo
Appelez cette fonction membre pour définir l’ID de commande, le style et le numéro d’image du bouton.
void SetButtonInfo(
int nIndex,
UINT nID,
UINT nStyle,
int iImage);
Paramètres
nIndex
Index de base zéro du bouton ou séparateur pour lequel les informations doivent être définies.
nID
Valeur à laquelle l’ID de commande du bouton est défini.
nStyle
Nouveau style de bouton. Les styles de bouton suivants sont pris en charge :
TBBS_BUTTON
Pushbutton standard (valeur par défaut)TBBS_SEPARATOR
SéparateurTBBS_CHECKBOX
Case à cocher automatiqueTBBS_GROUP
Marque le début d’un groupe de boutonsTBBS_CHECKGROUP
Marque le début d’un groupe de boutons de case à cocherTBBS_DROPDOWN
Crée un bouton de liste déroulante.TBBS_AUTOSIZE
La largeur du bouton est calculée en fonction du texte du bouton, et non de la taille de l’image.TBBS_NOPREFIX
Le texte du bouton n’a pas de préfixe d’accélérateur associé.
iImage
Nouvel index pour l’image du bouton dans la bitmap.
Notes
Pour les séparateurs, qui ont le style TBBS_SEPARATOR
, cette fonction définit la largeur du séparateur en pixels sur la valeur stockée dans iImage
.
Remarque
Vous pouvez également définir des états de bouton à l’aide du nStyle
paramètre . Toutefois, étant donné que les états de bouton sont contrôlés par le ON_UPDATE_COMMAND_UI
gestionnaire, tous les états que vous définissez SetButtonInfo
seront perdus lors du traitement inactif suivant. Découvrez comment mettre à jour des objets d’interface utilisateur et TN031 : barres de contrôle pour plus d’informations.
Pour plus d’informations sur les images bitmap et les boutons, consultez la vue d’ensemble CToolBar
et CToolBar::LoadBitmap
.
CToolBar::SetButtons
Cette fonction membre définit l’ID de commande de chaque bouton de barre d’outils sur la valeur spécifiée par l’élément correspondant du tableau lpIDArray
.
BOOL SetButtons(
const UINT* lpIDArray,
int nIDCount);
Paramètres
lpIDArray
Pointeur vers un tableau d’ID de commande. Il peut s’agir de NULL pour allouer des boutons vides.
nIDCount
Nombre d’éléments dans le tableau pointé par lpIDArray
.
Valeur de retour
Valeur différente de zéro cas de réussite ; sinon, 0.
Notes
Si un élément du tableau a la valeur ID_SEPARATOR
, un séparateur est créé à la position correspondante de la barre d’outils. Cette fonction définit également le style TBBS_BUTTON
de chaque bouton et le style TBBS_SEPARATOR
de chaque séparateur sur , et affecte un index d’image à chaque bouton. L’index d’image spécifie la position de l’image du bouton dans la bitmap.
Vous n’avez pas besoin de tenir compte des séparateurs dans la bitmap, car cette fonction n’affecte pas d’index d’image pour les séparateurs. Si votre barre d’outils comporte des boutons aux positions 0, 1 et 3 et un séparateur à la position 2, les images aux positions 0, 1 et 2 de votre bitmap sont affectées aux boutons aux positions 0, 1 et 3, respectivement.
Si lpIDArray
la valeur est NULL, cette fonction alloue de l’espace pour le nombre d’éléments spécifiés par nIDCount
. Permet SetButtonInfo
de définir les attributs de chaque élément.
CToolBar::SetButtonStyle
Appelez cette fonction membre pour définir le style d’un bouton ou d’un séparateur, ou pour regrouper des boutons.
void SetButtonStyle(
int nIndex,
UINT nStyle);
Paramètres
nIndex
Index du bouton ou du séparateur dont les informations doivent être définies.
nStyle
Style du bouton. Les styles de bouton suivants sont pris en charge :
TBBS_BUTTON
Pushbutton standard (valeur par défaut)TBBS_SEPARATOR
SéparateurTBBS_CHECKBOX
Case à cocher automatiqueTBBS_GROUP
Marque le début d’un groupe de boutonsTBBS_CHECKGROUP
Marque le début d’un groupe de boutons de case à cocherTBBS_DROPDOWN
Crée un bouton de liste déroulanteTBBS_AUTOSIZE
La largeur du bouton sera calculée en fonction du texte du bouton, et non de la taille de l’image.TBBS_NOPREFIX
Le texte du bouton n’a pas de préfixe d’accélérateur associé à celui-ci
Notes
Le style d’un bouton détermine la façon dont le bouton s’affiche et comment il répond à l’entrée utilisateur.
Avant d’appeler SetButtonStyle
, appelez la GetButtonStyle
fonction membre pour récupérer le style de bouton ou de séparateur.
Remarque
Vous pouvez également définir des états de bouton à l’aide du nStyle
paramètre . Toutefois, étant donné que les états de bouton sont contrôlés par le ON_UPDATE_COMMAND_UI
gestionnaire, tous les états que vous définissez SetButtonStyle
seront perdus lors du traitement inactif suivant. Découvrez comment mettre à jour des objets d’interface utilisateur et TN031 : barres de contrôle pour plus d’informations.
CToolBar::SetButtonText
Appelez cette fonction pour définir le texte sur un bouton.
BOOL SetButtonText(
int nIndex,
LPCTSTR lpszText);
Paramètres
nIndex
Index du bouton dont le texte doit être défini.
lpszText
Pointe vers le texte à définir sur un bouton.
Valeur de retour
Valeur différente de zéro cas de réussite ; sinon, 0.
Exemple
Consultez l’exemple pour CToolBar::GetToolBarCtrl
.
CToolBar::SetHeight
Cette fonction membre définit la hauteur de la barre d’outils sur la valeur, en pixels, spécifiée dans cyHeight
.
void SetHeight(int cyHeight);
Paramètres
cyHeight
Hauteur en pixels de la barre d’outils.
Notes
Après l’appel SetSizes
, utilisez cette fonction membre pour remplacer la hauteur de barre d’outils standard. Si la hauteur est trop petite, les boutons sont coupés en bas.
Si cette fonction n’est pas appelée, l’infrastructure utilise la taille du bouton pour déterminer la hauteur de la barre d’outils.
CToolBar::SetSizes
Appelez cette fonction membre pour définir les boutons de la barre d’outils sur la taille, en pixels, spécifiée dans sizeButton
.
void SetSizes(
SIZE sizeButton,
SIZE sizeImage);
Paramètres
sizeButton
Taille en pixels de chaque bouton.
sizeImage
Taille en pixels de chaque image.
Notes
Le sizeImage
paramètre doit contenir la taille, en pixels, des images dans la bitmap de la barre d’outils. Les dimensions dans sizeButton
doivent être suffisantes pour contenir l’image plus 7 pixels supplémentaires en largeur et 6 pixels supplémentaires en hauteur. Cette fonction définit également la hauteur de la barre d’outils pour qu’elle corresponde aux boutons.
Appelez cette fonction membre uniquement pour les barres d’outils qui ne suivent pas les recommandations relatives à la conception de logiciels pour les tailles de bouton et d’image.
Exemple
// This code fragment is taken from CMainFrame::OnCreate
// CMainFrame is derived from CMDIFrameWnd
// This example shows how to add text to toolbar buttons.
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE
| CBRS_TOP) || !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}
//Show text on toolbar buttons.
VERIFY(m_wndToolBar.SetButtonText(0, _T("New")));
VERIFY(m_wndToolBar.SetButtonText(1, _T("Open")));
VERIFY(m_wndToolBar.SetButtonText(2, _T("Save")));
VERIFY(m_wndToolBar.SetButtonText(4, _T("Cut")));
VERIFY(m_wndToolBar.SetButtonText(5, _T("Copy")));
VERIFY(m_wndToolBar.SetButtonText(6, _T("Paste")));
VERIFY(m_wndToolBar.SetButtonText(8, _T("Print")));
VERIFY(m_wndToolBar.SetButtonText(9, _T("About")));
CRect temp;
m_wndToolBar.GetItemRect(0,&temp);
m_wndToolBar.SetSizes(CSize(temp.Width(),
temp.Height()),CSize(16,15));
Voir aussi
Exemple MFC CTRLBARS
Exemple MFC DLGCBR32
Exemple MFC DOCKTOOL
CControlBar
Classe
Graphique hiérarchique
CToolBarCtrl
Classe