Condividi tramite


Utilizzo di elenchi di immagini con i controlli intestazione

Le voci di intestazione hanno la possibilità di visualizzare un'immagine in una voce di intestazione.Questa immagine, archiviata in un elenco immagini associato, è 16 x 16 pixel e ha le stesse caratteristiche delle icone utilizzate in un controllo visualizzazione elenco.Per implementare questo comportamento corretto, è necessario innanzitutto creare e inizializzare l'elenco di immagini, associare l'elenco con il controllo intestazione e quindi modificare gli attributi della voce di intestazione che visualizzano l'immagine.

La procedura riportata di seguito vengono illustrati i dettagli, utilizzando un puntatore a un controllo intestazione (m_pHdrCtrl) e un puntatore a un elenco immagini (m_pHdrImages).

Per visualizzare un'immagine in una voce di intestazione

  1. Creare un nuovo elenco immagini (o utilizzare un oggetto esistente dell'elenco immagini) utilizzando il costruttore di CImageList , archiviante il puntatore risultante.

  2. Inizializzare il nuovo oggetto dell'elenco immagini chiamando CImageList::Create.Il codice seguente è un esempio di questa chiamata.

    m_ListImageList.Create(16, 16, ILC_COLOR, 2, 2);
    
  3. Per aggiungere immagini a ogni voce di intestazione.Il seguente codice aggiunge due immagini predefinite.

    m_ListImageList.Add(AfxGetApp()->LoadIcon(IDI_ICON1));
    m_ListImageList.Add(AfxGetApp()->LoadIcon(IDI_ICON2));
    
  4. Associare l'elenco di immagini con il controllo intestazione con una chiamata a CHeaderCtrl::SetImageList.

  5. Modificare la voce di intestazione per visualizzare un'immagine dall'elenco di immagini associato.Nell'esempio che segue la prima immagine, da m_phdrImages, sulla prima voce di intestazione, m_pHdrCtrl.

    HDITEM curItem = {0};
    
    pHeaderCtrl->SetImageList(&m_ListImageList);
    
    curItem.mask = HDI_TEXT | HDI_FORMAT | HDI_WIDTH | HDI_IMAGE;
    curItem.pszText = _T("Column 1");
    curItem.cxy = 100;
    curItem.iImage = 0;
    curItem.fmt = HDF_LEFT | HDF_STRING | HDF_IMAGE;
    pHeaderCtrl->InsertItem(0, &curItem);
    

Per informazioni dettagliate sui valori dei parametri utilizzati, consultare CHeaderCtrlrilevante.

[!NOTA]

È possibile avere più controlli utilizzando lo stesso elenco.Ad esempio, in un controllo visualizzazione elenco standard, potrebbe verificarsi un elenco immagini (16 x 16 immagini di pixel) utilizzato sia da piccola visualizzazione icone di un controllo elenco che le voci dell'intestazione del controllo visualizzazione elenco.

Vedere anche

Riferimenti

Utilizzando CHeaderCtrl