UpdateLayeredWindowIndirect function
Updates the position, size, shape, content, and translucency of a layered window.
Syntax
BOOL WINAPI UpdateLayeredWindowIndirect(
_In_ HWND hwnd,
_In_ const UPDATELAYEREDWINDOWINFO *pULWInfo
);
Parameters
hwnd [in]
Type: HWNDA 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.
pULWInfo [in]
Type: const UPDATELAYEREDWINDOWINFO*A pointer to a structure that contains the information for the window.
Return value
Type: ****
Type: BOOL
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.
Remarks
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.
Requirements
Minimum supported client |
Windows Vista [desktop apps only] |
Minimum supported server |
Windows Server 2008 [desktop apps only] |
Header |
Winuser.h (include Windows.h) |
Library |
User32.lib |
DLL |
User32.dll |
See also
Reference
Conceptual
Other Resources