我使用PyQt在一台3840x2160的电脑上开发了一个应用程序。我使用QtDesigner来创建几乎所有的UI需求,然后手动在Python中添加了我需要的其他功能。当我想要部署这个应用程序时,我意识到目标电脑的分辨率是1920x1080。应用程序中的一些小部件(通常只有文本/按钮)很好,但是一旦我开始涉及到更复杂的布局,事情就不太清晰了。具体而言,QLabels和其他QItems重叠在一起,图像在其水平轴上比例失调,物体之间的间距减小。以下是几张说明问题的图片。
3480x2160屏幕(根据Windows缩放和布局为250%) 注意:这是我开发时看到的。
3480x2160屏幕(根据Windows缩放和布局为100%)
1920x1080屏幕(根据Windows缩放和布局为100%)
我还注意到,Qt Designer本身在转换到不同的屏幕分辨率时也有类似的问题(请参见附加的图像)。
高分辨率屏幕 - QtDesigner
低分辨率屏幕 - QtDesigner
如果我想利用QtDesigner处理多个屏幕分辨率,应该采取什么样的正确方式? 我知道可以使用QDesktopWidget.screenGeometry获取屏幕分辨率,但是否有一种方法可以同时缩放每个参数,而不是手动更改每个项目? 避免特定的“大小策略”是否有所帮助?