Поделиться через


Структура IMAGELISTDRAWPARAMS (commctrl.h)

Содержит сведения о операции рисования списка изображений и используется с функцией IImageList::D raw .

Синтаксис

typedef struct _IMAGELISTDRAWPARAMS {
  DWORD      cbSize;
  HIMAGELIST himl;
  int        i;
  HDC        hdcDst;
  int        x;
  int        y;
  int        cx;
  int        cy;
  int        xBitmap;
  int        yBitmap;
  COLORREF   rgbBk;
  COLORREF   rgbFg;
  UINT       fStyle;
  DWORD      dwRop;
  DWORD      fState;
  DWORD      Frame;
  COLORREF   crEffect;
} IMAGELISTDRAWPARAMS, *LPIMAGELISTDRAWPARAMS;

Members

cbSize

Тип: DWORD

Размер этой структуры в байтах.

himl

Тип: HIMAGELIST

Дескриптор списка изображений, который содержит изображение, которое нужно нарисовать.

i

Тип: int

Отсчитываемый от нуля индекс изображения.

hdcDst

Тип: HDC

Дескриптор контекста конечного устройства.

x

Тип: int

Координата x, указывающая, где рисуется изображение.

y

Тип: int

Координата y, указывающая, где рисуется изображение.

cx

Тип: int

Значение, указывающее число пикселей для рисования относительно левого верхнего угла операции рисования, указанного xBitmap и yBitmap. Если cx и cy равны нулю, то Рисование рисует весь допустимый раздел. Метод не гарантирует, что параметры допустимы.

cy

Тип: int

Значение, указывающее число пикселей для рисования относительно левого верхнего угла операции рисования, указанного xBitmap и yBitmap. Если cx и cy равны нулю, то Рисование рисует весь допустимый раздел. Метод не гарантирует, что параметры допустимы.

xBitmap

Тип: int

Координата x, указывающая левый верхний угол операции рисования в ссылке на сам образ. Пиксели изображения, слева от xBitmap и выше yBitmap, не отображаются.

yBitmap

Тип: int

Координата y, указывающая левый верхний угол операции рисования в ссылке на сам образ. Пиксели изображения, слева от xBitmap и выше yBitmap, не отображаются.

rgbBk

Тип: COLORREF

Цвет фона изображения. Этот параметр может быть определяемым приложением значением RGB или одним из следующих значений.

Ценность Meaning
CLR_DEFAULT
Цвет фона по умолчанию. Изображение рисуется с помощью цвета фона списка изображений.
CLR_NONE
Нет цвета фона. Изображение рисуется прозрачно.

rgbFg

Тип: COLORREF

Цвет переднего плана изображения. Этот элемент используется только в том случае, если fStyle включает флаг ILD_BLEND25 или ILD_BLEND50 . Этот параметр может быть определяемым приложением значением RGB или одним из следующих значений:

Ценность Meaning
CLR_DEFAULT
Цвет переднего плана по умолчанию. Изображение рисуется с помощью цвета выделения системы в качестве цвета переднего плана.
CLR_NONE
Нет цвета смешения. Изображение смешивается с цветом контекста целевого устройства.

fStyle

Тип: UINT

Флаг, указывающий стиль рисования и, при необходимости, изображение наложения. Дополнительные сведения о изображении наложения см. в разделе комментариев в конце этого раздела. Этот элемент может содержать один или несколько флагов рисования списка изображений.

dwRop

Тип: DWORD

Значение, указывающее код операции растра. Эти коды определяют, как данные цвета для исходного прямоугольника будут объединены с цветными данными для целевого прямоугольника для достижения окончательного цвета. Этот элемент игнорируется, если fStyle не включает флаг ILD_ROP . Ниже приведены некоторые распространенные коды операций растра:

Ценность Meaning
ЧЕРНОТА
Заполняет прямоугольник назначения с помощью цвета, связанного с нулем индекса в физической палитре. (Этот цвет черный для физической палитры по умолчанию.)
DSTINVERT
Инвертирует прямоугольник назначения.
MERGECOPY
Объединяет исходные прямоугольники с указанным шаблоном с помощью логического оператора AND .
MERGEPAINT
Объединяет инвертированные исходные прямоугольники с цветами прямоугольника назначения с помощью логического оператора OR .
NOTSRCCOPY
Копирует перевернутый исходный прямоугольник в место назначения.
NOTSRCERASE
Объединяет цвета прямоугольника источника и назначения с помощью логического оператора OR . Инвертирует результирующий цвет.
PATCOPY
Копирует указанный шаблон в точечный рисунок назначения.
PATINVERT
Объединяет указанные цвета шаблона с цветами прямоугольника назначения с помощью логического оператора XOR .
PATPAINT
Объединяет цвета шаблона с перевернутыми цветами исходного прямоугольника и объединяет результат с целевыми прямоугольниками с помощью логического оператора OR .
SRCAND
Объединяет цвета исходного и целевого прямоугольников с помощью логического оператора AND .
SRCCOPY
Копирует исходный прямоугольник непосредственно в целевой прямоугольник.
SRCERASE
Объединяет инвертированные цвета целевого прямоугольника с исходными прямоугольниками с помощью оператора Boolean AND .
SRCINVERT
Объединяет цвета исходного и целевого прямоугольника с помощью логического оператора XOR .
SRCPAINT
Объединяет цвета прямоугольника источника и назначения с помощью логического оператора OR .
БЕЛИЗНЫ
Заполняет прямоугольник назначения с помощью цвета, связанного с индексом, в физической палитре. Этот цвет является белым для физической палитры по умолчанию.

fState

Тип: DWORD

Флаг, указывающий состояние рисования. Этот элемент может содержать один или несколько флагов состояния списка изображений. Для использования этого члена необходимо использовать comctl32.dll версии 6. См. примечания.

Frame

Тип: DWORD

Используется с эффектом альфа-смешивания .

При использовании с ILS_ALPHA этот элемент содержит значение альфа-канала. Это значение может быть от 0 до 255, с 0 полностью прозрачным и 255 полностью непрозрачным.

Для использования этого члена необходимо использовать comctl32.dll версии 6. См. примечания.

crEffect

Тип: DWORD

Цвет, используемый для эффектов свечения и тени . Для использования этого члена необходимо использовать comctl32.dll версии 6. См. примечания.

Замечания

Изображение наложения — это изображение, нарисованное поверх основного изображения, указанного в элементе этой структуры. Чтобы указать изображение наложения, используйте побитовый оператор OR для объединения fStyle с макросом INDEXTOOVERLAYMASK , передав одноуровневый индекс изображения наложения в макросе. Это изображение должно быть указано ранее как изображение наложения с помощью API ImageList_SetOverlayImage .

Чтобы извлечь изображение наложения из fStyle, используйте побитовый оператор AND , чтобы маскировать fStyle со значением ILD_OVERLAYMASK .

Comctl32.dll версии 6 не распространяется. Чтобы использовать Comctl32.dll версии 6, необходимо указать его в манифесте. Дополнительные сведения о манифестах см. в разделе Включениевизуальных стилей.

Требования

Требование Ценность
Минимальный поддерживаемый клиент Windows Vista [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2003 [только классические приложения]
Header commctrl.h (include Commctrl.h)