CImageList::DrawIndirect
Эта функция-член вызывается для рисования изображения из списка образа.
BOOL DrawIndirect(
IMAGELISTDRAWPARAMS* pimldp
);
BOOL DrawIndirect(
CDC* pDC,
int nImage,
POINT pt,
SIZE sz,
POINT ptOrigin,
UINT fStyle = ILD_NORMAL,
DWORD dwRop = SRCCOPY,
COLORREF rgbBack = CLR_DEFAULT,
COLORREF rgbFore = CLR_DEFAULT,
DWORD fState = ILS_NORMAL,
DWORD Frame = 0,
COLORREF crEffect = CLR_DEFAULT
);
Параметры
pimldp
Указатель на структуру IMAGELISTDRAWPARAMS, содержащий сведения об операции рисования.pDC
Указатель на контекст устройства назначения. Необходимо удалить этот объект CDC после завершения с ним.nImage
Индекс, начинающийся с нуля образа для рисования.pt
Структура ТОЧКА, содержащий координаты по осям x и y, в котором образ будет рисования.sz
Структура РАЗМЕР, указывающий размер образа для рисования.ptOrigin
Структура ТОЧКА, содержащий координаты по осям x и y, определяющий левый верхний угол относительно самого операции рисования образу. Образа слева от точки, координатами x и y с координатой не нарисована.fStyle
Пометьте определение стиля документа и, при необходимости, образ перекрытия. См. раздел примeчаний дополнительные сведения о режиме перекрытия. Реализация по умолчанию MFC, ILD_NORMAL, рисует изображение с помощью цвета фона для списка образа. Если значение CLR_NONE цвет фона, изображение рисуется прозрачно использование маски.Другие возможные стили, описаны в разделе членом fStyle структуры IMAGELISTDRAWPARAMS.
dwRop
Значение, определяющее код растр- операции. Эти коды определяют, каким образом данные о цвете для прямоугольника источника, должны объединяться с данными о цвете для прямоугольника назначения для получения окончательного цвета. MFC имеют значение по умолчанию реализация SRCCOPY, копий прямоугольник источника непосредственно в прямоугольник назначения. Этот параметр не позволяет игнорировать, если параметр fStyle пометить ILD_ROP.Другие возможные значения описаны в разделе членом dwRop структуры IMAGELISTDRAWPARAMS.
rgbBack
Цвет фона образа по умолчанию CLR_DEFAULT. Этот параметр может быть приложение- указанными rgb или одно следующих значений:Значение
Значение
CLR_DEFAULT
По умолчанию цвет фона. Способ рисования с помощью цвета фона списка образа.
CLR_NONE
Нет цвета фона. Способ рисования прозрачно.
rgbFore
Цвет по умолчанию CLR_DEFAULT образа. Этот параметр может быть приложение- указанными rgb или одно следующих значений:Значение
Значение
CLR_DEFAULT
Цвет по умолчанию. Способ рисования с помощью цвета выделения системы, как цвет.
CLR_NONE
Нет цвета смешения. Образ смешан с цветом контексте устройства назначения.
Этот параметр используется, только если fStyle включает пометить ILD_BLEND25 или ILD_BLEND50.
fState
Пометить, указывающие состояние документа. Этот элемент может содержать один или несколько национальные флаги списка образа.Фрейм
Влияет на поведение насытьте и эффекты альфа-смешения.При использовании с ILS_SATURATE этот элемент содержит значение, добавлено к каждому из компонентов цвета на значке RGB-триада для каждой точки.
При использовании с ILS_APLHA этот элемент содержит значение альфа-канала. Это значение может находиться в диапазоне от 0 до 255, где 0 быть совершенно прозрачно и 255 быть полностью непрозрачный.
crEffect
Значение COLORREF, используемый для эффектов тени и гало.
Возвращаемое значение
TRUE, если образ успешно рисования; в противном случае FALSE.
Заметки
Используйте первую версию, если необходимо заполнить ее структуры Win32. Используйте вторую версию, если необходимо воспользоваться преимуществами одного или нескольких аргументов значения по умолчанию MFC или избежать управления структурой.
Образ перекрытия образ, который рисуется поверх первичного образа, указанного в этом параметре nImage функции-члена. Рисование маска перекрытия с помощью функции-члена Рисование с одн- перекрытия маски, основанным индексом, определенной с помощью макроса INDEXTOOVERLAYMASK.
Пример
int i, dx, cx, cy, nCount = m_myImageList.GetImageCount();
::ImageList_GetIconSize(m_myImageList, &cx, &cy);
// Draw the images of the image list on the DC.
for (dx = 0, i = 0; i < nCount; i++)
{
m_myImageList.DrawIndirect(&dc, i, CPoint(dx, 0),
CSize(cx, cy), CPoint(0, 0));
dx += cx;
}
Требования
Header: afxcmn.h