дескриптор 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 один раз и использовать это значение для времени существования процесса. Если DPI изменяется, процесс не будет настраиваться на новое значение DPI. Он будет автоматически масштабироваться по системе при изменении DPI из системного значения.
DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE
- Для каждого монитора учитывается DPI. Это окно проверяет значение DPI при его создании и корректирует коэффициент масштабирования при каждом изменении DPI. Эти процессы не масштабируются системой автоматически.
DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2
- Также называется Per Monitor версии 2. Усовершенствование по сравнению с исходным режимом осведомленности о DPI для каждого монитора, что позволяет приложениям получать доступ к новым поведениям масштабирования, связанным с DPI, на основе окна верхнего уровня.
- Уведомления об изменениях в дочернем окне DPI— в контекстах per Monitor версии 2 дерево окон уведомляется обо всех изменениях DPI.
- Масштабирование области, отличной от клиента. Все окна автоматически будут иметь свою не клиентская область , нарисованную в конфиденциальном режиме DPI. Вызовы enableNonClientDpiScaling являются ненужными.
- Масштабирование меню Win32 — все меню NTUSER, созданные в контекстах Per Monitor версии 2, будут масштабироваться в режиме на монитор.
- Масштабирование диалогов — диалоговые окна Win32, созданные в контекстах Per Monitor версии 2, автоматически отвечают на изменения DPI.
- Улучшено масштабирование элементов управления comctl32 — различные элементы управления comctl32 улучшили поведение масштабирования DPI в контекстах Per Monitor версии 2.
- Улучшено поведение тем — дескриптор UxTheme, открытый в контексте окна per Monitor версии 2, будет работать с точки зрения DPI, связанного с этим окном.
Per Monitor версии 2 был доступен в Creators Update Windows 10 (также известной как версия 1703) и недоступен в более ранних версиях операционной системы.
Ниже приведены дополнительные характеристики.
DPI_AWARENESS_CONTEXT_UNAWARE_GDISCALED
DPI не знает о улучшенном качестве содержимого на основе GDI. Этот режим работает аналогично DPI_AWARENESS_CONTEXT_UNAWARE, но также позволяет системе автоматически улучшать качество отрисовки текста и других примитивов на основе GDI при отображении окна на мониторе высокого уровня DPI.
Дополнительные сведения см. в разделе "Улучшение высокого уровня DPI" в классических приложениях на основе GDI.
DPI_AWARENESS_CONTEXT_UNAWARE_GDISCALED появилась в обновлении Windows 10 за октябрь 2018 г. (также известная как версия 1809).
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 10 версии 1607 [только классические приложения] |
Минимальная версия сервера |
Не поддерживается |
Верхний колонтитул |
|