GetLayeredWindowAttributes 函数 (winuser.h)
检索分层窗口的不透明度和透明度颜色键。
语法
BOOL GetLayeredWindowAttributes(
[in] HWND hwnd,
[out, optional] COLORREF *pcrKey,
[out, optional] BYTE *pbAlpha,
[out, optional] DWORD *pdwFlags
);
参数
[in] hwnd
类型:HWND
分层窗口的句柄。 使用 CreateWindowEx 函数创建窗口时指定WS_EX_LAYERED,或者在创建窗口后使用 SetWindowLong 设置WS_EX_LAYERED来创建分层窗口。
[out, optional] pcrKey
类型: COLORREF*
指向 COLORREF 值的指针,该值接收在组合分层窗口时要使用的透明度颜色键。 窗口以这种颜色绘制的所有像素都是透明的。 如果不需要 参数,则可以为 NULL 。
[out, optional] pbAlpha
类型: BYTE*
用于描述分层窗口不透明度的 Alpha 值。 类似于 BLENDFUNCTION 结构的 SourceConstantAlpha 成员。 当 pbAlpha 引用的变量为 0 时,窗口是完全透明的。 当 pbAlpha 引用的变量为 255 时,窗口不透明。 如果不需要 参数,则可以为 NULL 。
[out, optional] pdwFlags
类型: DWORD*
分层标志。 如果不需要该值,此参数可以为 NULL 。 分层标志可以是以下一个或多个值。
值 | 含义 |
---|---|
|
使用 pbAlpha 确定分层窗口的不透明度。 |
|
使用 pcrKey 作为透明度颜色。 |
返回值
类型: BOOL
如果该函数成功,则返回值为非零值。
如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。
注解
仅当应用程序以前在窗口中调用 SetLayeredWindowAttributes 时,才能调用 GetLayeredWindowAttributes。 如果分层窗口是使用 UpdateLayeredWindow 设置的,则函数将失败。
有关详细信息,请参阅 使用分层 Windows。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | winuser.h (包括 Windows.h) |
Library | User32.lib |
DLL | User32.dll |
API 集 | 在 Windows 8.1) 中引入的 ext-ms-win-ntuser-window-l1-1-1 ( |
请参阅
概念性
引用