Partager via


Contrôles rebar et bandes

L'objectif principal d'un contrôle rebar consiste à faire office de conteneur pour les fenêtres enfants, les contrôles de la boîte de dialogue communes, menus, les barres d'outils, et ainsi de suite. Cette relation contenant-contenu est prise en charge par le concept d'une « tape ». Chaque bande rebar peut contenir toute combinaison d'une barre à pinces, une bitmap, d'une étiquette de texte, et la fenêtre enfant.

La classe CReBarCtrl a de nombreuses fonctions membres que vous pouvez utiliser pour récupérer, et manipuler, les informations sur une bande rebar spécifique :

  • GetBandCount récupère le nombre de bandes présentes dans le contrôle rebar.

  • GetBandInfo initialise une structure de REBARBANDINFO avec les informations de la bande spécifiée. Il existe une fonction membre correspondante pour SetBandInfo.

  • GetRect récupère le rectangle englobant d'une bande spécifiée.

  • GetRowCount récupère le nombre de lignes de bande dans un contrôle rebar.

  • IDToIndex récupère l'index d'une bande spécifiée.

  • GetBandBorders récupère les lignes d'une bande.

Outre la manipulation, plusieurs fonctions membres sont fournies qui vous permettent de traiter les bandes rebars spécifiques.

InsertBand et DeleteBand ajoutent et suppriment des bandes rebars. MinimizeBand et MaximizeBand affectent la taille actuelle d'une bande rebar spécifique. MoveBand modifie l'index d'une bande rebar spécifique. ShowBand affiche ou masque une bande rebar à l'utilisateur.

L'exemple suivant montre l'ajout d'une bande de la barre d'outils (m_wndToolBar) à un contrôle rebar existant (m_wndReBar). La bande est décrite en initialisant la structure de rbi puis en appelant la fonction membre de InsertBand :

//load bitmap for toolbar background
m_RebarBitmap.LoadBitmap(IDB_BITMAP1);

//create a toolbar band
m_Toolbar1.Create(this, TBSTYLE_TRANSPARENT | TBSTYLE_FLAT);
m_Toolbar1.LoadToolBar(IDR_MAINFRAME);

REBARBANDINFO rbi = {0};
rbi.cbSize = sizeof(REBARBANDINFO);
rbi.fMask = RBBIM_BACKGROUND | RBBIM_CHILD | RBBIM_CHILDSIZE | 
   RBBIM_STYLE | RBBIM_TEXT;
rbi.fStyle = RBBS_GRIPPERALWAYS;
rbi.cxMinChild = 300;
rbi.cyMinChild = 50;
rbi.lpText = _T("Band #1");
rbi.cch = 7;
rbi.cx = 300;
rbi.hbmBack = (HBITMAP)m_RebarBitmap;
rbi.hwndChild = (HWND)m_Toolbar1;
m_Rebar.GetReBarCtrl().InsertBand(0, &rbi);

Voir aussi

Référence

À l'aide de CReBarCtrl

Concepts

contrôles (MFC)