在用Qt设计好窗体后,实际运行效果却可能不一致。比如出现下图这种情况:
这是由于显示设备DPI较高,导致窗体显示进行了缩放。
解决方案,在main.cpp中加入以下代码:
if(QT_VERSION>=QT_VERSION_CHECK(5,6,0))
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
如下图所示:
这样写的原因在于,Qt5.6以上版本增加了对高DPI设备的显示支持,应用程序属性 Qt :: AA_EnableHighDpiScaling 可以根据显示器的像素密度进行自动缩放。
再次编译,可以看到实际效果与设计效果趋于一致。
扩展一下,Qt :: AA_DisableHighDpiScaling 可以关闭所有缩放。 此属性优先级高于Qt::AA_EnableHighDpiScaling。
解决Qt运行效果和设计效果不一致问题
最新推荐文章于 2024-05-14 09:14:36 发布