DPI_AWARENESS_CONTEXT ハンドル

ウィンドウの認識コンテキストを識別します。

構文

#define DPI_AWARENESS_CONTEXT_UNAWARE              ((DPI_AWARENESS_CONTEXT)-1)
#define DPI_AWARENESS_CONTEXT_SYSTEM_AWARE         ((DPI_AWARENESS_CONTEXT)-2)
#define DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE    ((DPI_AWARENESS_CONTEXT)-3)
#define DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2 ((DPI_AWARENESS_CONTEXT)-4)
#define DPI_AWARENESS_CONTEXT_UNAWARE_GDISCALED    ((DPI_AWARENESS_CONTEXT)-5)

定数

DPI_AWARENESS_CONTEXT_UNAWARE

DPI を認識する必要があります。 このウィンドウは DPI の変更に対してスケーリングされず、常にスケール ファクターが 100% (96 DPI) であると想定されます。 他の DPI 設定では、システムによって自動的にスケーリングされます。

DPI_AWARENESS_CONTEXT_SYSTEM_AWARE

システム DPI 対応。 このウィンドウは DPI の変更に合わせてスケーリングされません。 DPI に対して 1 回クエリを実行し、その値をプロセスの有効期間にわたって使用します。 DPI が変更された場合、プロセスは新しい DPI 値に調整されません。 システム値から DPI が変更されると、システムによって自動的にスケールアップまたはスケールダウンされます。

DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE

モニターごとの DPI 対応。 このウィンドウでは、作成時に DPI がチェックされ、DPI が変更されるたびにスケール ファクターが調整されます。 これらのプロセスは、システムによって自動的にスケーリングされません。

DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2

Per Monitor v2 とも呼ばれます。 元のモニターごとの DPI 認識モードに対する進歩。これにより、アプリケーションはトップレベル ウィンドウごとに新しい DPI 関連のスケーリング動作にアクセスできます。
Per Monitor v2 は、Windows 10の Creators Update で使用でき、以前のバージョンのオペレーティング システムでは使用できません。
導入されるその他の動作は次のとおりです。

  • 子ウィンドウの DPI 変更通知 - モニターごとの v2 コンテキストでは、発生した DPI の変更がウィンドウ ツリー全体に通知されます。
  • クライアント領域以外のスケーリング - すべてのウィンドウで、クライアント以外の領域が DPI に依存する方法で自動的に描画されます。 EnableNonClientDpiScaling の呼び出しは不要です。
  • Win32 メニューのスケーリング - モニターごと v2 コンテキストで作成されたすべての NTUSER メニューは、モニターごとの方法でスケーリングされます。
  • Dialog Scaling - Per Monitor v2 コンテキストで作成された Win32 ダイアログは、DPI の変更に自動的に応答します。
  • comctl32 コントロールのスケーリングの改善 - さまざまな comctl32 コントロールによって、モニターごとの v2 コンテキストでの DPI スケーリング動作が改善されました。
  • テーマ設定の動作の改善 - UxTheme ハンドルが Per Monitor v2 ウィンドウのコンテキストで開かれると、そのウィンドウに関連付けられている DPI の観点から動作します。

DPI_AWARENESS_CONTEXT_UNAWARE_GDISCALED

GDI ベースのコンテンツの品質が向上し、DPI が認識されません。 このモードは、DPI_AWARENESS_CONTEXT_UNAWAREと同様に動作しますが、ウィンドウが高 DPI モニターに表示されるときに、テキストやその他の GDI ベースのプリミティブのレンダリング品質を自動的に向上させることもできます。

詳細については、「 GDI ベースのデスクトップ アプリでの高 DPI エクスペリエンスの向上」を参照してください。

DPI_AWARENESS_CONTEXT_UNAWARE_GDISCALEDは、Windows 10の 2018 年 10 月の更新プログラム (バージョン 1809 とも呼ばれます) で導入されました。

要件

要件
サポートされている最小のクライアント
Windows 10バージョン 1607 [デスクトップ アプリのみ]
サポートされている最小のサーバー
サポートなし
ヘッダー
windef.h

関連項目

AreDpiAwarenessContextsEqual

GetAwarenessFromDpiAwarenessContext

GetDpiFromDpiAwarenessContext

GetThreadDpiAwarenessContext

GetWindowDpiAwarenessContext

IsValidDpiAwarenessContext

SetProcessDpiAwarenessContext

SetThreadDpiAwarenessContext