Qt 分辨率自适应

关于Qt 分辨率自适应的方法

最理想的方法

尽可能的使用布局管理器layout,不要把控件设置固定大小,不要使用现成的贴图,使用qml界面编程;

获取屏幕DPI

dpi=1的时候最适合,否则所有控件的大小,都需要乘以dpi

QScreen* screen = app.primaryScreen();
qreal dpi = screen->logicalDotsPerInch()/96;

加入高分屏的支持

//Qt从5.6.0开始,支持High-DPI。
int main(int argc, char *argv[])
{
#if (QT_VERSION >= QT_VERSION_CHECK(5, 6, 0))
    QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
#endif
    QApplication a(argc, argv);
    ......
}

使用QScrollArea

设好各个控件最小宽高,QScrollArea自动加滚动条

你可能感兴趣的:(日常学习记录)