GetWindowDC 関数 (winuser.h)
GetWindowDC 関数は、タイトル バー、メニュー、スクロール バーなど、ウィンドウ全体のデバイス コンテキスト (DC) を取得します。 ウィンドウ デバイス コンテキストでは、デバイス コンテキストの原点がクライアント領域ではなくウィンドウの左上隅であるため、ウィンドウ内の任意の場所に描画できます。
GetWindowDC は、デバイス コンテキストを取得するたびに、ウィンドウ デバイス コンテキストに既定の属性を割り当てます。 以前の属性は失われます。
構文
HDC GetWindowDC(
[in] HWND hWnd
);
パラメーター
[in] hWnd
取得するデバイス コンテキストを持つウィンドウへのハンドル。 この値が NULL の場合、 GetWindowDC は画面全体のデバイス コンテキストを取得します。
このパラメーターが NULL の場合、 GetWindowDC はプライマリ ディスプレイ モニターのデバイス コンテキストを取得します。 他のディスプレイ モニターのデバイス コンテキストを取得するには、 EnumDisplayMonitors 関数と CreateDC 関数を 使用します。
戻り値
関数が成功した場合、戻り値は、指定されたウィンドウのデバイス コンテキストへのハンドルです。
関数が失敗した場合、戻り値は NULL で、エラーまたは無効な hWnd パラメーターを示します。
注釈
GetWindowDC は、ウィンドウの非クライアント領域内の特殊な描画効果を目的としています。 任意のウィンドウの非クライアント領域での描画はお勧めしません。
GetSystemMetrics 関数を使用すると、タイトル バー、メニュー、スクロール バーなど、非クライアント領域のさまざまな部分のディメンションを取得できます。
GetDC 関数を使用すると、画面全体のデバイス コンテキストを取得できます。
描画が完了したら、デバイス コンテキストを解放するために ReleaseDC 関数を呼び出す必要があります。 ウィンドウ デバイス コンテキストを解放しないと、アプリケーションによって要求された描画に重大な影響があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | winuser.h (Windows.h を含む) |
Library | User32.lib |
[DLL] | User32.dll |
API セット | ext-ms-win-ntuser-draw-l1-1-0 (Windows 8で導入) |