GetLayeredWindowAttributes function (winuser.h)

Retrieves the opacity and transparency color key of a layered window.

Syntax

BOOL GetLayeredWindowAttributes(
  [in]            HWND     hwnd,
  [out, optional] COLORREF *pcrKey,
  [out, optional] BYTE     *pbAlpha,
  [out, optional] DWORD    *pdwFlags
);

Parameters

[in] hwnd

Type: HWND

A handle to the layered window. A layered window is created by specifying WS_EX_LAYERED when creating the window with the CreateWindowEx function or by setting WS_EX_LAYERED using SetWindowLong after the window has been created.

[out, optional] pcrKey

Type: COLORREF*

A pointer to a COLORREF value that receives the transparency color key to be used when composing the layered window. All pixels painted by the window in this color will be transparent. This can be NULL if the argument is not needed.

[out, optional] pbAlpha

Type: BYTE*

The Alpha value used to describe the opacity of the layered window. Similar to the SourceConstantAlpha member of the BLENDFUNCTION structure. When the variable referred to by pbAlpha is 0, the window is completely transparent. When the variable referred to by pbAlpha is 255, the window is opaque. This can be NULL if the argument is not needed.

[out, optional] pdwFlags

Type: DWORD*

A layering flag. This parameter can be NULL if the value is not needed. The layering flag can be one or more of the following values.

Value Meaning
LWA_ALPHA
0x00000002
Use pbAlpha to determine the opacity of the layered window.
LWA_COLORKEY
0x00000001
Use pcrKey as the transparency color.

Return value

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

GetLayeredWindowAttributes can be called only if the application has previously called SetLayeredWindowAttributes on the window. The function will fail if the layered window was setup with UpdateLayeredWindow.

For more information, see Using Layered Windows.

Requirements

Requirement Value
Minimum supported client Windows XP [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Target Platform Windows
Header winuser.h (include Windows.h)
Library User32.lib
DLL User32.dll
API set ext-ms-win-ntuser-window-l1-1-1 (introduced in Windows 8.1)

See also

Conceptual

CreateWindowEx

Reference

SetLayeredWindowAttributes

SetWindowLong

Using Windows

Windows