The CreateIcon function creates an icon that has the specified size, colors, and bit patterns.
HICON CreateIcon(
HINSTANCE hInstance, | // handle to application instance |
int nWidth, | // icon width |
int nHeight, | // icon height |
BYTE cPlanes, | // number of planes in XOR bitmask |
BYTE cBitsPixel, | // number of bits per pixel in XOR bitmask |
CONST BYTE *lpbANDbits, | // pointer to AND bitmask array |
CONST BYTE *lpbXORbits | // pointer to XOR bitmask array |
); |
Parameters
hInstance
Identifies the instance of the module creating the icon.
nWidth
Specifies the width, in pixels, of the icon.
nHeight
Specifies the height, in pixels, of the icon.
cPlanes
Specifies the number of planes in the XOR bitmask of the icon.
cBitsPixel
Specifies the number of bits per pixel in the XOR bitmask of the icon.
lpbANDbits
Points to an array of bytes that contains the bit values for the AND bitmask of the icon. This bitmask describes a monochrome bitmap.
lpbXORbits
Points to an array of bytes that contains the bit values for the XOR bitmask of the icon. This bitmask describes a monochrome or device-dependent color bitmap.
Return Values
If the function succeeds, the return value is the handle to an icon.
If the function fails, the return value is NULL. To get extended error information, call GetLastError.
Remarks
The nWidth and nHeight parameters must specify a width and height supported by the current display driver, because the system cannot create icons of other sizes. To determine the width and height supported by the display driver, use the GetSystemMetrics function, specifying the SM_CXICON or SM_CYICON value.
CreateIcon applies the following truth table to the AND and XOR bitmasks:
AND bitmask | XOR bitmask | Display |
0 | 0 | Black |
0 | 1 | White |
1 | 0 | Screen |
1 | 1 | Reverse screen |
See Also