Partage via


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

Chaque bande d'armature 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 rebar

  1. Attachez une liste d’images à votre objet de contrôle 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 d’armature.

    • Définissez le membre fMask sur RBBIM_IMAGE, en utilisant l’opérateur OU au niveau du bit pour inclure des indicateurs supplémentaires, si nécessaire.

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

  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 d'armature (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