PyQt/Qt解决分辨率不同的设备显示问题

问题及解决方案

当两个不同分辨率不同的设备运行同一个由Qt开发的程序时,会出现控件大小不一致甚至无法正常显示等问题。解决这个问题的方法是在主函数(程序入口)最前面添加一行代码:

app = QApplication(sys.argv)

比如,

if __name__ == '__main__':
    QCoreApplication.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling)
    app = QApplication(sys.argv)
    win = myWin()
    win.show()
    sys.exit(app.exec())

假如你是用的C++语言的话,添加如下代码

QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);

实测

我在MacBook Pro上做的UI,在一台分辨率不同的Windows设备上测试。
添加前,是这样的
PyQt/Qt解决分辨率不同的设备显示问题_第1张图片
两个按钮文字几乎看不见了
添加后,是这样的
PyQt/Qt解决分辨率不同的设备显示问题_第2张图片

你可能感兴趣的:(Qt,c++,python,qt,pyqt5,pyqt)