Updates the position, size, shape, content, and translucency of a layered window.
BOOL WINAPI UpdateLayeredWindowIndirect( _In_ HWND hwnd, _In_ const UPDATELAYEREDWINDOWINFO *pULWInfo );
A handle to a layered window. A layered window is created by specifying WS_EX_LAYERED when creating the window with the CreateWindowEx function.
Windows 8: The WS_EX_LAYERED style is supported for top-level windows and child windows. Previous Windows versions support WS_EX_LAYERED only for top-level windows.
Type: const UPDATELAYEREDWINDOWINFO*
A pointer to a structure that contains the information for the window.
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
UpdateLayeredWindowIndirect is similar to UpdateLayeredWindow but uses an UPDATELAYEREDWINDOWINFO structure to contain much of the information that is provided to UpdateLayeredWindow through its parameters.
The UpdateLayeredWindowIndirect function maintains the window's appearance on the screen. The windows underneath a layered window do not need to be repainted when they are uncovered due to a call to UpdateLayeredWindowIndirect, because the system will automatically repaint them. This permits seamless animation of the layered window.
UpdateLayeredWindowIndirect always updates the entire window. To update part of a window, use the traditional WM_PAINT and set the blend value using SetLayeredWindowAttributes.
For best drawing performance by the layered window and any underlying windows, the layered window should be as small as possible. An application should also process the message and re-create its layered windows when the display's color depth changes.
For more information, see Layered Windows.
Minimum supported client
Windows Vista [desktop apps only]
Minimum supported server
Windows Server 2008 [desktop apps only]
|Winuser.h (include Windows.h)|