WM_CTLCOLORSCROLLBAR メッセージ

WM_CTLCOLORSCROLLBAR メッセージは、コントロールが描画されようとしたときに、スクロール バー コントロールの親ウィンドウに送信されます。 このメッセージに応答すると、親ウィンドウで表示コンテキスト ハンドルを使用して、スクロール バー コントロールの背景色を設定できます。

ウィンドウは、WindowProc 関数を介してこのメッセージを受け取ります。

WM_CTLCOLORSCROLLBAR

    WPARAM wParam
    LPARAM lParam; 

パラメーター

wParam

スクロール バー コントロールのデバイス コンテキストを処理します。

lParam

スクロール バーへのハンドル。

戻り値

アプリケーションがこのメッセージを処理する場合は、ハンドルをブラシに返す必要があります。 システムは、ブラシを使用してスクロール バー コントロールの背景を描画します。

注釈

アプリケーションが作成したブラシ (たとえば、 CreateSolidBrush または CreateBrushIndirect 関数を使用) を返す場合、アプリケーションはブラシを解放する必要があります。 アプリケーションがシステム ブラシ ( たとえば、GetStockObject または GetSysColorBrush 関数によって取得されたブラシ) を返す場合、アプリケーションはブラシを解放する必要はありません。

既定では、 DefWindowProc 関数はスクロール バー コントロールの既定のシステム 色を選択します。

WM_CTLCOLORSCROLLBAR メッセージがスレッド間で送信されることはありません。同じスレッド内でのみ送信されます。

ダイアログ ボックス プロシージャがこのメッセージを処理する場合は、目的の戻り値を INT_PTR にキャストし、値を直接返す必要があります。 ダイアログ ボックス プロシージャが FALSE を返す場合は、既定のメッセージ処理が実行されます。 SetWindowLong 関数によって設定されたDWL_MSGRESULT値は無視されます。

WM_CTLCOLORSCROLLBAR メッセージは、子スクロール バー コントロールでのみ使用されます。 ウィンドウに接続されているスクロール バー (WS_SCROLLとWS_VSCROLL) では、このメッセージは生成されません。 ウィンドウにアタッチされているスクロール バーの外観をカスタマイズするには、フラット スクロール バー関数を使用します。

必要条件

要件
サポートされている最小のクライアント
Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2003 [デスクトップ アプリのみ]
ヘッダー
Winuser.h (Windows.h を含む)

関連項目

参照

WM_CTLCOLORBTN

WM_CTLCOLOREDIT

WM_CTLCOLORLISTBOX

WM_CTLCOLORSTATIC

その他のリソース

DefWindowProc

RealizePalette

SelectPalette

WM_CTLCOLORDLG