Функция DrawIconEx (winuser.h)
Рисует значок или курсор в указанный контекст устройства, выполняя указанные операции растра и растягивая или сжимая значок или курсор, как указано.
Синтаксис
BOOL DrawIconEx(
[in] HDC hdc,
[in] int xLeft,
[in] int yTop,
[in] HICON hIcon,
[in] int cxWidth,
[in] int cyWidth,
[in] UINT istepIfAniCur,
[in, optional] HBRUSH hbrFlickerFreeDraw,
[in] UINT diFlags
);
Параметры
[in] hdc
Тип: HDC
Дескриптор контекста устройства, в который будет нарисован значок или курсор.
[in] xLeft
Тип: int
Логическая координата x левого верхнего угла значка или курсора.
[in] yTop
Тип: int
Логическая координата y верхнего левого угла значка или курсора.
[in] hIcon
Тип: HICON
Дескриптор для рисования значка или курсора. Этот параметр может определить анимированный курсор.
[in] cxWidth
Тип: int
Логическая ширина значка или курсора. Если этот параметр равен нулю, а параметр diFlagsDI_DEFAULTSIZE, функция использует значение системной метрики SM_CXICON для задания ширины. Если этот параметр равен нулю и DI_DEFAULTSIZE не используется, функция использует фактическую ширину ресурса.
[in] cyWidth
Тип: int
Логическая высота значка или курсора. Если этот параметр равен нулю, а параметр
[in] istepIfAniCur
Тип: UINT
Индекс кадра для рисования, если hIcon идентифицирует анимированный курсор. Этот параметр игнорируется, если hIcon не определяет анимированный курсор.
[in, optional] hbrFlickerFreeDraw
Тип: HBRUSH
Дескриптор кисти, которая используется системой для рисования без мерцания. Если hbrFlickerFreeDraw является допустимым дескриптором кисти, система создает растровое изображение вне экрана с помощью указанной кисти для цвета фона, рисует значок или курсор в растровое изображение, а затем копирует растровое изображение в контекст устройства, определяемый hdc. Если hbrFlickerFreeDrawNULL, система рисует значок или курсор непосредственно в контекст устройства.
[in] diFlags
Тип: UINT
Флаги рисования. Этот параметр может быть одним из следующих значений.
Возвращаемое значение
Тип: BOOL
Если функция выполнена успешно, возвращаемое значение ненулевое.
Если функция завершается ошибкой, возвращаемое значение равно нулю. Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.
Замечания
Функция DrawIconEx помещает верхний левый угол значка в расположении, указанном параметрами xLeft и yTop. Расположение зависит от текущего режима сопоставления контекста устройства.
Если заданы только один из флагов
Если заданы флаги DI_IMAGE и DI_MASK:
- Если значок или курсор является 32-разрядным альфа-смешанным значком или курсором, изображение рисуется с AC_SRC_OVERфункцией смешивания, а маска игнорируется.
- Для всех остальных значков или курсоров маска рисуется с помощью кода операции SRCANDрастрового, а изображение рисуется с помощью кода SRCINVERT
Чтобы дублировать DrawIcon (hDC, X, Y, hIcon)
, вызовите DrawIconEx следующим образом:
DrawIconEx (hDC, X, Y, hIcon, 0, 0, 0, NULL, DI_NORMAL | DI_COMPAT | DI_DEFAULTSIZE);
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 Профессиональный [только классические приложения] |
минимальный поддерживаемый сервер | Windows 2000 Server [только классические приложения] |
целевая платформа | Виндоус |
заголовка | winuser.h (включая Windows.h) |
библиотеки |
User32.lib |
DLL | User32.dll |
набор API | ext-ms-win-ntuser-gui-l1-1-0 (представлено в Windows 8) |
См. также
концептуальные
Справочник