Utilizzo di un elenco immagini con un controllo Rebar
Ogni controllo Rebar band può contenere, tra l'altro, un'immagine proveniente da un elenco di immagini associato. Nella procedura riportata di seguito vengono descritti in dettaglio i passaggi necessari per visualizzare un'immagine in un controllo Rebar band.
Per visualizzare le immagini in un Rebar band
Allegare un elenco di immagini all'oggetto controllo rebar effettuando una chiamata a SetImageList, passando un puntatore a un elenco di immagini esistente.
Modificare la struttura REBARBANDINFO per assegnare un'immagine a una banda di ribar:
Impostare il membro fMask su
RBBIM_IMAGE
, usando l'operatore OR bit per bit per includere flag aggiuntivi in base alle esigenze.Impostare il membro iImage sull'indice dell'elenco di immagini dell'immagine da visualizzare.
Inizializzare tutti i membri di dati restanti, ad esempio la dimensione, il testo e un handle della finestra figlio contenuta, con le informazioni necessarie.
Inserire la nuova banda (con l'immagine) con una chiamata a CReBarCtrl::InsertBand, passando la struttura REBARBANDINFO .
Nell'esempio seguente si presuppone che un oggetto elenco immagini esistente con due immagini sia stato assegnato all'oggetto controllo Rebar (m_wndReBar
). Un nuovo Rebar band (definito da rbi
), che contiene la prima immagine, viene aggiunto tramite una chiamata a 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);