親ディスプレイ デバイス コンテキスト

親デバイス コンテキストを使用すると、アプリケーションはウィンドウのクリッピング領域を設定するために必要な時間を最小限に抑えることができます。 通常、アプリケーションは親デバイス コンテキストを使用して、プライベートまたはクラスのデバイス コンテキストを必要とせずに、コントロール ウィンドウの描画を高速化します。 たとえば、システムはプッシュ ボタンと編集コントロールに親デバイス コンテキストを使用します。 親デバイス コンテキストは、最上位またはポップアップ ウィンドウでは使用せず、子ウィンドウでのみ使用することを目的としています。

アプリケーションでは、CS_PARENTDC スタイルを指定して、子ウィンドウのクリッピング領域を親ウィンドウの領域に設定して、子が親ウィンドウで描画できるようにします。 CS_PARENTDCを指定すると、子ウィンドウごとに表示領域を再計算し続ける必要がないため、アプリケーションのパフォーマンスが向上します。

親ウィンドウによって設定された属性値は、子ウィンドウでは保持されません。たとえば、親ウィンドウは子ウィンドウのブラシを設定できません。 保持される唯一のプロパティは、クリッピング領域です。 ウィンドウは、独自の出力をウィンドウの制限にクリップする必要があります。 親デバイス コンテキストのクリッピング領域は親ウィンドウと同じであるため、子ウィンドウは親ウィンドウ全体に描画される可能性がありますが、この方法では親デバイス コンテキストを使用しないでください。

親ウィンドウがプライベートまたはクラスのデバイス コンテキストを使用している場合、親ウィンドウが子ウィンドウをクリップする場合、または子ウィンドウが子ウィンドウまたは兄弟ウィンドウをクリップする場合、システムはCS_PARENTDCスタイルを無視します。