An application sends an STM_SETIMAGE message to associate a new image with a static control.
Syntax
To send this message, call the
SendMessage
function as follows.
lResult = SendMessage( // returns HANDLE in lResult
hWndControl, // (HWND) handle to destination control
STM_SETIMAGE, // (UINT) message ID
wParam, // = () wParam;
lParam // = (LPARAM)(HANDLE) lParam;
);
Parameters
- wParam
Specifies the type of image to associate with the static control. This parameter can be one of the following values:
IMAGE_BITMAPIMAGE_CURSORIMAGE_ENHMETAFILEIMAGE_ICON
- lParam
-
Handle to the image to associate with the static control.
Return Value
The return value is a handle to the image previously associated with the static control, if any; otherwise, it is NULL.
Remarks
To associate an image with a static control, the control must have the proper style. The following table shows the style needed for each image type.
| Image type | Static control style |
|---|
| IMAGE_BITMAP | SS_BITMAP |
| IMAGE_CURSOR | SS_ICON |
| IMAGE_ENHMETAFILE | SS_ENHMETAFILE |
| IMAGE_ICON | SS_ICON |
Important In version 6 of the Microsoft Win32 controls, a bitmap passed to a static control using the STM_SETIMAGE message was the same bitmap returned by a subsequent STM_SETIMAGE message. The client is responsible to delete any bitmap sent to a static control.
With Microsoft Windows XP, if the bitmap passed in the STM_SETIMAGE message contains pixels with non-zero alpha, the static control takes a copy of the bitmap. This copied bitmap is returned by the next STM_SETIMAGE message. The client code may independently track the bitmaps passed to the static control, but if it does not check and release the bitmaps returned from STM_SETIMAGE messages, the bitmaps are leaked.
Message Information
| Header | Declared in Winuser.h, include Windows.h |
|---|
| Minimum operating systems |
Windows 95, Windows NT 3.51 |
|---|
See Also
STM_GETIMAGE