存在的问题
使用Qt designer软件设计出来的界面,与转换成python程序运行出来的结果不一致,具体看下图
Qt designer预览结果
程序运行出来的结果
原因分析
我自己的电脑是2560*1600分辨率的屏幕,采用的是200%的缩放比例,出现这种情况是Windows在高dpi下的老毛病了,常见的现象就是应用程序的各个组件缩放不正常。什么是高dpi以及缩放之类的问题,这里不做探讨,有兴趣的读者可以自己去了解。
解决方法
在程序中加入这一行代码,它的作用是启动应用程序的高dpi缩放
QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling)
结果
常见误区
请勿用以下的方法启动高dpi缩放,高dpi缩放必须在app创建之前启动
app = QtWidgets.QApplication(sys.argv)
app.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling,True)
'''
程序会出现以下的提示
Attribute Qt::AA_EnableHighDpiScaling must be set before QCoreApplication is created.
'''