Структура 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 внизу), а hbmColor имеет значение NULL. Кроме того, в этом случае высота должна быть кратна двум.

Для цветных значков растровые изображения 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

РАСТРОВОГО ИЗОБРАЖЕНИЯ

Getdibits

Справочные материалы