High-DPI Support in QT

    xiaoxiao2026-05-17  7

                                                               High-DPI Support in QT

    一、qt 从5.4版本开始支持高DPI,开启高DPI支持的方法是通过配置环境变量

    1,添加环境变量 QT_DEVICE_PIXEL_RATIO = auto

    2, 需要设置缩放比例 QT_SCALE_FACTOR,该值决定界面缩放的比例,只设置第一步不会看到界面尺寸的改变。

    二、qt从5.6版本起,抛弃使用5.4版本中通过配置环境变量开启High-DPI的方法,改为通过调用API

    QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);

     注意:该代码的调用必须在QApplication对象生成之前才能生效。示例如下:

    int main(int argc, char *argv[])

    {

    QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);

    QApplication a(argc, argv);

    MainWindow w;

    w.show();

    return a.exec();

    }

    另外,这种方式的缩放比例支持整倍缩放,例如 125%会被当成1倍,150%、175%会被2倍缩放。

    三、相关链接

    http://blog.qt.io/blog/2016/01/26/high-dpi-support-in-qt-5-6/

    http://doc.qt.io/qt-5/highdpi.html

    转载请注明原文地址: https://ju.6miu.com/read-1309793.html
    最新回复(0)