標頭項目能夠在標頭項目內顯示影像。 此影像儲存在相關聯的影像清單中,是16 x 16像素,而且與清單檢視控件中使用的圖示影像具有相同的特性。 若要成功實作此行為,您必須先建立和初始化映射清單、將清單與標頭控件產生關聯,然後修改將顯示影像的標頭項目屬性。
下列程序說明詳細步驟,使用指向標頭控件的指標(m_pHdrCtrl)及指向影像清單的指標(m_pHdrImages)。
在標題項目中顯示影像
使用 CImageList 建構函式建構新的影像清單(或使用現有的影像清單物件),以儲存結果指標。
呼叫 CImageList::Create,初始化新的映射清單物件。 下列程式代碼是這個呼叫的其中一個範例。
m_ListImageList.Create(16, 16, ILC_COLOR, 2, 2);為每個標頭專案新增影像。 下列程式代碼會新增兩個預先定義的影像。
m_ListImageList.Add(AfxGetApp()->LoadIcon(IDI_ICON1)); m_ListImageList.Add(AfxGetApp()->LoadIcon(IDI_ICON2));將影像清單與標頭控件產生關聯,並呼叫 CHeaderCtrl::SetImageList。
修改標題欄位,以顯示相關聯影像清單中的影像。 下列範例會將第一個影像從
m_phdrImages指派給第一個標頭專案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);
如需所用參數值的詳細資訊,請參閱相關的 CHeaderCtrl。
備註
您可以使用相同的影像清單來有多個控制件。 例如,在標準清單檢視控制項中,16 x 16 像素影像的影像清單可能會被清單檢視控制項的小型圖示檢視和標題專案共用。