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


Структура ICONINFOEXA (winuser.h)

Содержит сведения о значке или курсоре. Расширяет ICONINFO. Используется GetIconInfoEx.

Синтаксис

typedef struct _ICONINFOEXA {
  DWORD   cbSize;
  BOOL    fIcon;
  DWORD   xHotspot;
  DWORD   yHotspot;
  HBITMAP hbmMask;
  HBITMAP hbmColor;
  WORD    wResID;
  CHAR    szModName[MAX_PATH];
  CHAR    szResName[MAX_PATH];
} ICONINFOEXA, *PICONINFOEXA;

Члены

cbSize

Тип: DWORD

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

fIcon

Тип: BOOL

Указывает, определяет ли эта структура значок или курсор. Значение TRUE указывает значок; FALSE указывает курсор.

xHotspot

Тип: DWORD

Координата x горячей точки курсора. Если эта структура определяет значок, горячая точка всегда находится в центре значка, и этот элемент игнорируется.

yHotspot

Тип: DWORD

Координата y горячей точки курсора. Если эта структура определяет значок, горячая точка всегда находится в центре значка, и этот элемент игнорируется.

hbmMask

Тип: HBITMAP

Дескриптор маски монохромного значка растрового изображения.

hbmColor

Тип: HBITMAP

Дескриптор цвета значка растрового изображения.

wResID

Тип: WORD

Идентификатор ресурса в модуле szModName. Если значок или курсор был загружен по имени, wResID равно нулю, а szResName содержит имя ресурса.

Макрос MAKEINTRESOURCE(wResID) можно использовать для преобразования идентификатора ресурса в тип имени ресурса, совместимый с функциями управления ресурсами.

szModName[MAX_PATH]

Тип: TCHAR[MAX_PATH]

Имя модуля, из которого была загружена значок или курсор.

Вы можете использовать функцию GetModuleHandle, чтобы преобразовать ее в дескриптор модуля, совместимый сфункций управления ресурсами .

szResName[MAX_PATH]

Тип: TCHAR[MAX_PATH]

Имя ресурса в модуле szModName.

Замечания

Для монохромных значков hbmMask в два раза больше высоты значка (с маской AND сверху и маской XOR в нижней части), а hbmColorNULL. Кроме того, в этом случае высота должна быть даже несколькими из двух.

Для значков цвета hbmMask и hbmColor растровые изображения одинаковы, каждый из которых является размером значка.

Функцию GetObject можно использовать для получения содержимого hbmMask и hbmColor в структуре BITMAP . Битовые изображения можно получить с вызовом GetDIBits на растровых изображениях в этой структуре.

ICONINFOEX — это расширенная версия структуры ICONINFO с дополнительными szModName/szResName/элементов wResID, которые можно использовать для запроса значков или битов ресурсов курсора. Эти биты обычно загружаются вызовами функций FindResource, LoadResource, LockResource и LookupIconIdFromDirectoryEx.

Заметка

Заголовок winuser.h определяет ICONINFOEX как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows Vista [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2008 [только классические приложения]
заголовка winuser.h (включая Windows.h)

См. также

концептуальные

CreateIconIndirect

GetIconInfo

значки

растровых карт

GetObject

BITMAP

GetDIBits

Справочник