Как исправить размытый текст в элементах управления WxPython в Windows?

У нас есть приложение на основе Python, написанное с помощью WxPython 4, которое мы создаем для нескольких операционных систем, включая Windows. В Windows 10, по крайней мере, в моей среде (внутри виртуальной машины на мониторе с высоким разрешением) текстовые элементы в интерфейсе размыты:

введите здесь описание изображения

Я могу несколько улучшить ситуацию, настроив Windows Переопределение масштабирования DPI в приложении. Это косвенно и неоптимально, и кажется, что должен быть способ сделать это из WxPython более напрямую. Однако я не нашел способа сделать это.

Есть ли способ установить масштабирование DPI из WxPython или иным образом исправить размытый текст в Windows в WxPython 4 непосредственно из приложения?


person mhucka    schedule 16.06.2018    source источник


Ответы (1)


Согласно сообщению от системы отслеживания проблем Python и тому, что я пробовал в официальный пример приветствия wxPython, часть 2 (helloworld2.py), добавление следующего кода в вашу программу должно работать:

import ctypes
try:
    ctypes.windll.shcore.SetProcessDpiAwareness(True)
except:
    pass
person Nairen Zheng    schedule 18.01.2019