ImageList_LoadImageImageList_LoadImage*
*Contents  *Index  *Topic Contents
*Previous Topic: ImageList_GetImageInfo
*Next Topic: ImageList_Merge

ImageList_LoadImage


HIMAGELIST ImageList_LoadImage(
    HINSTANCE hi,
    LPCTSTR lpbmp,
    int cx,
    int cGrow,
    COLORREF crMask,
    UINT uType,
    UINT uFlags
   );	

Creates an image list from the specified bitmap, cursor, or icon resource.

hi
Handle to the instance that contains the resource. This parameter can be NULL if you are loading an image from a file or loading an OEM resource.
lpbmp
Identifies the image to load.

If the uFlags parameter includes LR_LOADFROMFILE, lpbmp is the address of a null-terminated string that names the file containing the image to load.

If the hi parameter is non-NULL and LR_LOADFROMFILE is not specified, lpbmp is the address of a null-terminated string that contains the name of the image resource in the hi module.

If hi is NULL and LR_LOADFROMFILE is not specified, the low-order word of this parameter must be the identifier of an OEM image to load. To create this value, use the MAKEINTRESOURCE macro with one of the OEM image identifiers defined in WINUSER.H. These identifiers have the following prefixes:
OBM_ for OEM bitmaps
OIC_ for OEM icons
OCR_ for OEM cursors

cx
Width of each image. The height of each image and the initial number of images are inferred by the dimensions of the specified resource.
cGrow
Number of images by which the image list can grow when the system needs to make room for new images. This parameter represents the number of new images that the resized image list can contain.
crMask
Color used to generate a mask. Each pixel of this color in the specified bitmap, cursor, or icon is changed to black, and the corresponding bit in the mask is set to 1. If this parameter is the CLR_NONE value, no mask is generated. If this parameter is the CLR_DEFAULT value, the color of the pixel at the upper-left corner of the image is treated as the mask color.
uType
Flag that specifies the type of image to load. This parameter can be one of the following values:
IMAGE_BITMAP Loads a bitmap.
IMAGE_CURSOR Loads a cursor.
IMAGE_ICON Loads an icon.
uFlags
Flags that specify how to load the image. This parameter can be a combination of the following values:
LR_DEFAULTCOLOR Uses the color format of the display.
LR_LOADDEFAULTSIZE Uses the width or height specified by the system metric values for cursors and icons if the cx parameter is set to zero. If this value is not specified and cx is set to zero, the function sets the size to the one specified in the resource. If the resource contains multiple images, the function sets the size to that of the first image.
LR_LOADFROMFILE Loads the image from the file specified by the lpbmp parameter.
LR_LOADMAP3DCOLORS Searches the color table for the image and replaces the following shades of gray with the corresponding three-dimensional color (see the comments section at the end of this topic for more information):

Dk Gray: RGB(128, 128, 128)COLOR_3DSHADOW

Gray: RGB(192, 192, 192)COLOR_3DFACE

Lt Gray: RGB(223, 223, 223)COLOR_3DLIGHT

LR_LOADTRANSPARENT Retrieves the color value of the first pixel in the image and replaces the corresponding entry in the color table with the default window color (the COLOR_WINDOW display color). All pixels in the image that use that color become the default window value color. This value applies only to images that have a corresponding color table. See the comments section at the end of this topic for more information.
LR_MONOCHROME Loads the image in black and white.
LR_SHARED Shares the image handle if the image is loaded multiple times. Do not use this value for images that have nontraditional sizes that might change after loading or for images that are loaded from a file.

LR_LOADTRANSPARENT does not load the image transparently. It creates an opaque image list that only appears transparent because all of the "background" pixels have been changed to COLOR_WINDOW. If the images are drawn over a background that is not the color COLOR_WINDOW, the image will not draw properly. Also, LR_LOADTRANSPARENT and LR_LOADMAP3DCOLORS use the system colors that were in effect at the time that ImageList_LoadImage was called. If the system colors subsequently change, the application must reload the image to remap the colors.

See also LoadImage


Up Top of Page
© 1997 Microsoft Corporation. All rights reserved. Terms of Use.