Windows 8でアクティブなウィンドウのキャプションカラーを取得するにはどうすればよいですか?
電話をかけてみましたGetSysColor(COLOR_ACTIVECAPTION)
が、色が違います。Windows 7では正しく動作するので、これは奇妙なことです。アクティブウィンドウのキャプションカラーまたはタスクバーのカラーを取得する他の方法はありますか?
Windows 8でアクティブなウィンドウのキャプションカラーを取得するにはどうすればよいですか?
電話をかけてみましたGetSysColor(COLOR_ACTIVECAPTION)
が、色が違います。Windows 7では正しく動作するので、これは奇妙なことです。アクティブウィンドウのキャプションカラーまたはタスクバーのカラーを取得する他の方法はありますか?
DWORD WINAPI GetSysColor(
_In_ int nIndex
);
GetSysColor()
関数の場合、パラメーターnIndex
が範囲外の場合、戻り値はゼロです。ゼロも有効な RGB 値であるためGetSysColor()
、システム カラーが現在のプラットフォームでサポートされているかどうかを判断するために使用することはできません。代わりに、色がサポートされていない場合GetSysColorBrush()
に返される関数を使用してください。NULL
別のオプションは、ガラス合成DwmGetColorizationColor()
に使用されている現在の色を取得できる関数を使用することです。Desktop Window Manager (DWM)
この値は現在の配色に基づいており、ユーザーが変更できます。WM_DWMCOLORIZATIONCOLORCHANGED
アプリケーションは、通知を処理することで色の変化をリッスンできます。
HRESULT WINAPI DwmGetColorizationColor(
_Out_ DWORD *pcrColorization,
_Out_ BOOL *pfOpaqueBlend
);