Condividi tramite


Utilizzo di elenchi di immagini con controlli Header

Le voci di intestazione hanno la possibilità di visualizzare un'immagine in una voce di intestazione. Questa immagine, archiviata in un elenco immagini collegato, a 16 x 16 pixel e possiede le stesse caratteristiche delle immagini icona utilizzate in un controllo visualizzazione elenco. Per implementare questo comportamento corretto, è necessario innanzitutto creare e inizializzare l'elenco 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 di immagini o utilizzare un oggetto esistenteelenco immagini) utilizzando il costruttore di CImageList, archiviando il puntatore risultante.

  2. Inizializzare il nuovo oggettoelenco immagini chiamando CImageList::Create. Il codice seguente è un esempio di questa chiamata.

    m_ListImageList.Create(16, 16, ILC_COLOR, 2, 2);
    
  3. Aggiungere le immagini per ogni voce di intestazione. Il codice seguente 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 immagini collegato. Nell'esempio assegna 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 di intestazione del controllo visualizzazione elenco.

Vedere anche

Riferimenti

Utilizzo di CHeaderCtrl