DwmGetColorizationColor 函数 (dwmapi.h)

检索桌面窗口管理器 (DWM) 玻璃合成使用的当前颜色。 此值基于当前配色方案,可由用户修改。 应用程序可以通过处理 WM_DWMCOLORIZATIONCOLORCHANGED 通知来侦听颜色更改。

语法

HRESULT DwmGetColorizationColor(
  [out] DWORD *pcrColorization,
  [out] BOOL  *pfOpaqueBlend
);

参数

[out] pcrColorization

指向一个值的指针,当此函数成功返回时,该值接收用于玻璃合成的当前颜色。 值的颜色格式为 0xAARRGGBB。

[out] pfOpaqueBlend

指向值的指针,当此函数成功返回时,该值指示颜色是否为不透明混合。 如果颜色不透明混合,则为 TRUE;否则为 FALSE

返回值

如果此函数成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

备注

pcrColorization 指向的值采用 0xAARRGGBB 格式。 许多 Microsoft Win32 API(如 COLORREF)使用 0x00BBGGRR 格式。 请小心确保使用预期颜色。

示例

以下示例代码显示了 WM_DWMCOLORIZATIONCOLORCHANGED 通知句柄。 如果收到着色通知,此代码将检索新的颜色值。


...
DWORD color = 0;
BOOL opaque = FALSE;
  
HRESULT hr = DwmGetColorizationColor(&color, &opaque);
if (SUCCEEDED(hr))
{
  // Update the application to use the new color.
}
...

要求

   
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 dwmapi.h
Library Dwmapi.lib
DLL Dwmapi.dll