【发布时间】:2017-05-10 21:58:53
【问题描述】:
我正在尝试将现有 PyQt5 应用迁移到窗口 10 的高 dpi。
Qt5 本身的文档在这里谈到了高 dpi 缩放: http://doc.qt.io/qt-5/highdpi.html
QT_AUTO_SCREEN_SCALE_FACTOR to "1".
但我无法在 python 代码中进行调整:/
有什么想法吗?
【问题讨论】:
-
Qt 文档说将该参数设置为环境变量。因此,您需要了解如何在 Python 中执行此操作:stackoverflow.com/q/5971312 确保在导入 PyQt5 之前执行此操作。
-
我试过
os.environ["QT_AUTO_SCREEN_SCALE_FACTOR"] = "1",但没有任何改变。然后我在这里发现bablabs.tistory.com/30 我必须另外使用app.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling),但现在我有以下错误:AttributeError: type object 'Qt' has no attribute 'AA_EnableHighDpiScaling' -
听起来您使用的是较旧的 Qt 版本,它没有实现适当的 HighDPI 支持。
-
谢谢,我使用的是 qt 5.4.1,显然 hdpi 支持从 5.6 开始,我会尽快更新它:D