DPI_AWARENESS_CONTEXT Handle

Identifiziert den Bewusstseinskontext 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 nicht bekannt. Dieses Fenster wird nicht für DPI-Änderungen skaliert und es wird immer davon ausgegangen, dass es einen Skalierungsfaktor von 100 % (96 DPI) aufweist. Es wird automatisch vom System auf jede andere DPI-Einstellung skaliert.

DPI_AWARENESS_CONTEXT_SYSTEM_AWARE

System-DPI-fähig. Dieses Fenster wird nicht für DPI-Änderungen skaliert. Es fragt einmal den DPI-Wert ab und verwendet diesen Wert für die Lebensdauer des Prozesses. Wenn sich der DPI-Wert ändert, wird der Prozess nicht an den neuen DPI-Wert angepasst. Es wird automatisch vom System hoch- oder herunterskaliert, wenn sich der DPI-Wert vom Systemwert ändert.

DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE

Dpi-fähig pro Monitor. In diesem Fenster wird beim Erstellen auf den DPI-Wert überprüft, und der Skalierungsfaktor wird bei jeder Änderung des DPI-Werts angepasst. Diese Prozesse werden vom System nicht automatisch skaliert.

DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2

Auch als "Pro Monitor v2" bezeichnet. Eine Weiterentwicklung gegenüber dem ursprünglichen DPI-Sensibilisierungsmodus pro Monitor, der Anwendungen den Zugriff auf neue DPI-bezogene Skalierungsverhalten pro Fenster auf oberster Ebene ermöglicht.
Pro Monitor v2 wurde im Creators Update von Windows 10 verfügbar gemacht und ist in früheren Versionen des Betriebssystems nicht verfügbar.
Die eingeführten zusätzlichen Verhaltensweisen sind wie folgt:

  • DPI-Änderungsbenachrichtigungen für untergeordnete Fenster : In Kontexten pro Monitor v2 wird die gesamte Fensterstruktur über alle dpi-Änderungen benachrichtigt, die auftreten.
  • Skalierung des Nicht-Clientbereichs : Bei allen Fenstern wird der Nichtclientbereich automatisch auf DPI-bezogene Weise gezeichnet. Aufrufe von EnableNonClientDpiScaling sind nicht erforderlich.
  • Skalierung von Win32-Menüs : Alle NTUSER-Menüs, die in Pro Monitor v2-Kontexten erstellt wurden, werden auf monitorspezifische Weise skaliert.
  • Dialogskalierung : Win32-Dialoge, die in Pro Monitor v2-Kontexten erstellt wurden, reagieren automatisch auf DPI-Änderungen.
  • Verbesserte Skalierung von comctl32-Steuerelementen : Verschiedene comctl32-Steuerelemente haben das DPI-Skalierungsverhalten in Kontexten pro Monitor v2 verbessert.
  • Verbessertes Designverhalten : UxTheme-Handles, die im Kontext eines Fensters pro Monitor v2 geöffnet werden, werden in Bezug auf den dpi-Wert ausgeführt, der diesem Fenster zugeordnet ist.

DPI_AWARENESS_CONTEXT_UNAWARE_GDISCALED

DPI nicht bekannt 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 Erfahrung mit hohem DPI-Wert in GDI-basierten Desktop-Apps.

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

Anforderungen

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

Weitere Informationen

AreDpiAwarenessContextsEqual

GetAwarenessFromDpiAwarenessContext

GetDpiFromDpiAwarenessContext

GetThreadDpiAwarenessContext

GetWindowDpiAwarenessContext

IsValidDpiAwarenessContext

SetProcessDpiAwarenessContext

SetThreadDpiAwarenessContext