Partager via


Utilisation d'une liste d'images avec un contrôle rebar

Chaque bande de barres de rebar peut contenir, entre autres, une image d’une liste d’images associée. La procédure suivante décrit les étapes nécessaires à l’affichage d’une image dans une bande de barres.

Pour afficher des images dans une bande de barres rebar

  1. Attachez une liste d’images à votre objet de contrôle de barre de rebar en effectuant un appel à SetImageList, en passant un pointeur vers une liste d’images existante.

  2. Modifiez la structure REBARBANDINFO pour affecter une image à une bande de barres rebar :

    • Définissez le membre RBBIM_IMAGEfMask sur , à l’aide de l’opérateur OR au niveau du bit pour inclure des indicateurs supplémentaires si nécessaire.

    • Définissez le membre iImage sur l’index de liste d’images de l’image à afficher.

  3. Initialisez tous les membres de données restants, tels que la taille, le texte et le handle de la fenêtre enfant contenue, avec les informations nécessaires.

  4. Insérez la nouvelle bande (avec l’image) avec un appel à CReBarCtrl ::InsertBand, en passant la structure REBARBANDINFO.

L’exemple suivant suppose qu’un objet de liste d’images existant avec deux images a été attaché à l’objet de contrôle rebar (m_wndReBar). Une nouvelle bande de barres rébar (définie par rbi), contenant la première image, est ajoutée avec un appel à InsertBand:

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

Voir aussi

Utilisation de CReBarCtrl
Contrôles