IImageList interface (commoncontrols.h)

Exposes methods that manipulate and interact with image lists.

To use IImageList, specify Comctl32.dll version 6 in the manifest. If you do not do this, Comctl32.dll version 5 will be used by default, with which IImageList could display unpredictable behavior. For more information on manifests, see Enabling Visual Styles.


The IImageList interface inherits from the IUnknown interface. IImageList also has these types of members:


The IImageList interface has these methods.

Method Description
IImageList::Add Adds an image or images to an image list.
IImageList::AddMasked Adds an image or images to an image list, generating a mask from the specified bitmap.
IImageList::BeginDrag Begins dragging an image.
IImageList::Clone Clones an existing image list.
IImageList::Copy Copies images from a given image list.
IImageList::DragEnter Locks updates to the specified window during a drag operation and displays the drag image at the specified position within the window.
IImageList::DragLeave Unlocks the specified window and hides the drag image, which enables the window to update.
IImageList::DragMove Moves the image that is being dragged during a drag-and-drop operation. This function is typically called in response to a WM_MOUSEMOVE message.
IImageList::DragShowNolock Shows or hides the image being dragged.
IImageList::Draw Draws an image list item in the specified device context.
IImageList::EndDrag Ends a drag operation.
IImageList::GetBkColor Gets the current background color for an image list.
IImageList::GetDragImage Gets the temporary image list that is used for the drag image. The function also retrieves the current drag position and the offset of the drag image relative to the drag position.
IImageList::GetIcon Creates an icon from an image and a mask in an image list.
IImageList::GetIconSize Gets the dimensions of images in an image list. All images in an image list have the same dimensions.
IImageList::GetImageCount Gets the number of images in an image list.
IImageList::GetImageInfo Gets information about an image.
IImageList::GetImageRect Gets an image's bounding rectangle.
IImageList::GetItemFlags Gets the flags of an image.
IImageList::GetOverlayImage Retrieves a specified image from the list of images used as overlay masks.
IImageList::Merge Creates a new image by combining two existing images. This method also creates a new image list in which to store the image.
IImageList::Remove Removes an image from an image list.
IImageList::Replace Replaces an image in an image list with a new image.
IImageList::ReplaceIcon Replaces an image with an icon or cursor.
IImageList::SetBkColor Sets the background color for an image list.
IImageList::SetDragCursorImage Creates a new drag image by combining the specified image, which is typically a mouse cursor image, with the current drag image.
IImageList::SetIconSize Sets the dimensions of images in an image list and removes all images from the list.
IImageList::SetImageCount Resizes an existing image list.
IImageList::SetOverlayImage Adds a specified image to the list of images used as overlay masks.


Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Target Platform Windows
Header commoncontrols.h

See also

Image Lists