Использование списков изображений с элементами управления "Заголовок"
Элементы заголовка могут отображать изображение в элементе заголовка. Это изображение, хранящееся в связанном списке изображений, равно 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 пикселей), используемый как представлением небольших значков элемента управления представлением списка, так и элементами заголовков элемента управления представлением списка.