HMONITOR とデバイス コンテキスト

各物理ディスプレイは、 HMONITOR 型のモニター ハンドルで表されます。 有効な HMONITOR は NULL 以外であることが保証されます。 物理ディスプレイは、デスクトップの一部である限り、同じ HMONITOR を持っています。 WM_DISPLAYCHANGE メッセージが送信されると、すべてのモニターがデスクトップから削除され、その HMONITOR が無効になったり、設定が変更されたりすることがあります。 したがって、アプリケーションは、このメッセージの送信時にすべての HMONITORS が有効かどうかをチェックする必要があります。

ディスプレイ デバイス コンテキスト (DC) を返す関数は、通常、プライマリ モニターの DC を返します。 別のモニターの DC を取得するには、 EnumDisplayMonitors 関数を 使用します。 または、 GetMonitorInfo 関数のデバイス名を使用して、 CreateDC を使用して DC を作成できます。 ただし、 GetWindowDCBeginPaint などの関数が複数のディスプレイにまたがるウィンドウの DC を取得した場合、DC は 2 つのディスプレイにまたがるものになります。