我正在研究PyQt4 GUI。在测试期间,我发现所有QLabel的字体大小在不同的计算机上发生了变化。显然,Windows显示配置可以从100%更改为125%或150%,然后更改我的小部件的字体大小。
是否有一个选项可以强制GUI保持其字体大小独立于显示设置?
提前感谢您的帮助。
<小时/> 编辑:
Control Panel\Appearance and Personalization\Display
,你可以更改字体和其他显示的元素大小。此配置独立于屏幕分辨率,但我不知道它是否独立于屏幕的实际dpi。由于AA_DisableHighDpiScaling
不适用于PyQt4,我必须继续寻找其他解决方案。
答案 0 :(得分:0)
http://doc.qt.io/qt-5/highdpi.html
看起来您可以使用此代码段禁用缩放(但未检查):
QGuiApplication().setAttribute(Qt.AA_DisableHighDpiScaling)
答案 1 :(得分:0)
我知道这则帖子很旧,但我想我会加两分钱。如果您想遍历所有Qlabel并允许用户更改字体大小,则下面的代码对我来说很好(使用PyQt5)
# change font
def font_change(self):
font, ok = QtWidgets.QFontDialog.getFont()
if ok:
for name, obj in inspect.getmembers(self):
if isinstance(obj, QtWidgets.QLabel):
obj.setFont(font)