Freigeben über


DPI_AWARENESS_CONTEXT Handle

Identifiziert den Sensibilisierungskontext für ein Fenster.

Syntax

#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)

Konstanten

DPI_AWARENESS_CONTEXT_UNAWARE

DPI-Wert nicht bewusst. Dieses Fenster skaliert nicht für DPI-Änderungen und wird immer als Skalierungsfaktor von 100 % (96 DPI) angenommen. Sie wird automatisch vom System auf jeder anderen DPI-Einstellung skaliert.

DPI_AWARENESS_CONTEXT_SYSTEM_AWARE

System-DPI-fähig. Dieses Fenster skaliert nicht für DPI-Änderungen. Er fragt einmal nach dem DPI-Wert ab und verwendet diesen Wert für die Lebensdauer des Prozesses. Wenn sich der DPI-Wert ändert, passt sich der Prozess nicht an den neuen DPI-Wert an. Sie wird vom System automatisch nach oben oder unten skaliert, wenn sich der DPI-Wert vom Systemwert ändert.

DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE

Pro Monitor-DPI-Wert. In diesem Fenster wird beim Erstellen auf den DPI-Wert überprüft und der Skalierungsfaktor angepasst, wenn sich der DPI-Wert ändert. Diese Prozesse werden vom System nicht automatisch skaliert.

DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2

Auch als "Per Monitor v2" bezeichnet. Eine Weiterentwicklung des ursprünglichen DPI-Sensibilisierungsmodus pro Monitor, mit dem Anwendungen auf neue DPI-bezogene Skalierungsverhalten pro Fenster auf oberster Ebene zugreifen können.
Per Monitor v2 wurde im Creators Update von Windows 10 (auch bekannt als Version 1703) verfügbar gemacht und ist in früheren Versionen des Betriebssystems nicht verfügbar.
Die eingeführten zusätzlichen Verhaltensweisen sind wie folgt:

  • Änderungsbenachrichtigungen für untergeordnete Fenster – In Kontexten pro Monitor v2 wird die gesamte Fensterstruktur über alle auftretenden DPI-Änderungen benachrichtigt.
  • Skalierung des Nicht-Client-Bereichs – Alle Fenster haben automatisch ihren nicht-clientseitigen Bereich in sensibler Weise gezeichnet. Aufrufe an EnableNonClientDpiScaling sind nicht erforderlich.
  • Skalierung von Win32-Menüs – Alle ntUSER-Menüs , die in Per Monitor v2-Kontexten erstellt wurden, werden in einer Pro-Monitor-Weise skaliert.
  • Dialogskalierung – Win32-Dialogfelder, die in Per Monitor v2-Kontexten erstellt wurden, reagieren automatisch auf DPI-Änderungen.
  • Verbesserte Skalierung von comctl32-Steuerelementen – Verschiedene Comctl32-Steuerelemente haben das DPI-Skalierungsverhalten in Per Monitor v2-Kontexten verbessert.
  • Verbessertes Designverhalten – UxTheme-Handles, die im Kontext eines Per Monitor v2-Fensters geöffnet werden, funktionieren in Bezug auf den dpi-Wert, der diesem Fenster zugeordnet ist.

DPI_AWARENESS_CONTEXT_UNAWARE_GDISCALED

DPI-Werte wissen nicht mit verbesserter Qualität von GDI-basierten Inhalten. Dieser Modus verhält sich ähnlich wie DPI_AWARENESS_CONTEXT_UNAWARE, ermöglicht es dem System aber auch, die Renderingqualität von Text und anderen GDI-basierten Grundtypen automatisch zu verbessern, wenn das Fenster auf einem Monitor mit hohem DPI-Wert angezeigt wird.

Weitere Informationen finden Sie unter Verbessern der Hohen DPI-Erfahrung in GDI-basierten Desktop-Apps.

DPI_AWARENESS_CONTEXT_UNAWARE_GDISCALED wurde im Oktober 2018-Update von Windows 10 eingeführt (auch bekannt als Version 1809).

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 10, Version 1607 [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Keine unterstützt
Header
windef.h

Siehe auch

AreDpiAwarenessContextsEqual

GetAwarenessFromDpiAwarenessContext

GetDpiFromDpiAwarenessContext

GetThreadDpiAwarenessContext

GetWindowDpiAwarenessContext

IsValidDpiAwarenessContext

SetProcessDpiAwarenessContext

SetThreadDpiAwarenessContext