SetLayeredWindowAttributes 関数 (winuser.h)

レイヤード ウィンドウの不透明度および透明度のカラー キーを設定します。

構文

BOOL SetLayeredWindowAttributes(
  [in] HWND     hwnd,
  [in] COLORREF crKey,
  [in] BYTE     bAlpha,
  [in] DWORD    dwFlags
);

パラメーター

[in] hwnd

型: HWND

階層化されたウィンドウへのハンドル。 階層化されたウィンドウは、CreateWindowEx 関数を使用してウィンドウを作成するときにWS_EX_LAYEREDを指定するか、ウィンドウの作成後に SetWindowLongでWS_EX_LAYEREDを設定することによって作成されます。

Windows 8: WS_EX_LAYERED スタイルは、最上位のウィンドウと子ウィンドウでサポートされています。 以前のバージョンの Windows では、最上位のウィンドウに対してのみ WS_EX_LAYERED がサポートされています。

[in] crKey

種類: COLORREF

レイヤード ウィンドウの作成時に使用する透明度の色キーを指定する COLORREF 構造体。 この色のウィンドウによって塗りつぶされたすべてのピクセルは透明になります。 COLORREF を生成するには、RGB マクロを使用します。

[in] bAlpha

型: BYTE

レイヤード ウィンドウの不透明度を表すために使用されるアルファ値。 BLENDFUNCTION 構造体の SourceConstantAlpha メンバーと同様です。 bAlpha が 0 の場合、ウィンドウは完全に透明になります。 bAlpha が 255 の場合、ウィンドウは不透明になります。

[in] dwFlags

型: DWORD

実行するアクション。 このパラメーターには、次の 1 つ以上の値を指定できます。

意味
LWA_ALPHA
0x00000002
bAlpha を使用して、レイヤーウィンドウの不透明度を決定します。
LWA_COLORKEY
0x00000001
透明度の色として crKey を使用します。

戻り値

種類: BOOL

関数が成功すると、戻り値は 0 以外になります。

関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

階層化されたウィンドウ に対して SetLayeredWindowAttributes が呼び出されると、レイヤー スタイル ビットがクリアされて再び設定されるまで、後続の UpdateLayeredWindow 呼び出しは失敗することに注意してください。

詳細については、「 レイヤード Windows の使用」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winuser.h (Windows.h を含む)
Library User32.lib
[DLL] User32.dll
API セット ext-ms-win-ntuser-window-l1-1-1 (Windows 8.1で導入)

こちらもご覧ください

AlphaBlend

COLORREF

概念

CreateWindowEx

その他のリソース

RGB

リファレンス

SetWindowLong

TransparentBlt

UpdateLayeredWindow

Windows の使用

Windows