笔者在做的软件都是在4K屏幕上使用的,为了适配4K分辨率,就按照搜索到的建议在main函数的首行添加了下面的这段代码,以得到一个良好的界面显示,通过这种方法界面的整体显示是比较自然舒适。
#if (QT_VERSION >= QT_VERSION_CHECK(5,6,0))
{
QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling );
}
#endif
后来发现在QT Designer中显示清晰的图标,特别是QToolBar上的QAction对应的图标在编译后马赛克特别严重。后边查看了一下QGuiApplication::setAttribute的其他参数,发现了还有一个Qt::AA_UseHighDpiPixmaps,就添上去试了一下,没想到大功告成。通过这个方式即可摆脱马赛克版的图标。
#if (QT_VERSION >= QT_VERSION_CHECK(5,6,0))
{
QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling );
QGuiApplication::setAttribute(Qt::AA_UseHighDpiPixmaps);
}
#endif