15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту


Функция CreateIcon.

Функция CreateIcon создаёт иконку, которая имеет указанный размер, цвета и битовую палитру.

HICON CreateIcon(      
    HINSTANCE hInstance,
    int nWidth,
    int nHeight,
    BYTE cPlanes,
    BYTE cBitsPixel,
    const BYTE* lpbANDbits,
    const BYTE* lpbXORbits
);

Параметры

hInstance
Дескриптор экземпляра модуля, создающего иконку.
nWidth
Ширина иконки в пикселях.
nHeight
Высота иконки в пикселях.
cPlanes
Количество слоёв в битовой маске XOR иконки.
cBitsPixel
Количество бит на пиксель в битовой маске XOR иконки.
lpbANDbits
Указатель на массив байт, который содержит битовые значения для битовой маски AND иконки. Эта битовая маска описывает чёрно-белую иконку.
lpbXORbits
Указатель на массив байт, который содержит битовые значения для битовой маски XOR иконки. Эта битовая маска описывает чёрно-белый или устройство-зависимый битмап.

Возвращаемое значение

В случае успеха, функция возратит дескриптор иконки.

В случае ошибки, функция вернёт NULL. Для получения более подробной информации о ошибке, можно воспользоваться функцией GetLastError.


Заметки

Параметры nWidth и nHeight должны указывать ширину и высоту, поддерживаемые текущим драйвером дисплея, так как система не может создавать иконки других размеров. Чтобы определить ширину и высоту, поддерживаемые драйвером дисплея, можно воспользоваться функцией GetSystemMetrics указав значения SM_CXICON или SM_CYICON.

CreateIcon использует следующую таблицу истинности для битовых масок AND и XOR:

AND XOR Дисплей
0 0 Чёрный
0 1 Белый
1 0 Экран
1 1 Инвертирование экрана

Пример

См. Использование иконок.

Дополнительная информаци

Заголовок Объявлена в Winuser.h, включена в Windows.h
Библиотека User32.lib
Минимальные ОС Включена начиная с Windows 95, Windows NT 3.1