首页 > 其他 > 详细

5.QT屏幕分辨率适配

时间:2021-06-08 22:57:14      阅读:33      评论:0      收藏:0      [点我收藏+]

需求:qt的窗口、组件、字体需要适配屏幕分辨率。

思路:qt是根据显示器的物理长度或者宽度于分辨率的关系来计算dpi

实现:

 

#if(QT_VERSION >= QT_VERSION_CHECK(5,6,0))
        QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
#endif
        QApplication a(argc, argv);
        
        const float DEFAULT_DPI = 96.0;
        HDC screen = GetDC(NULL);
        FLOAT dpiX = static_cast<FLOAT>(GetDeviceCaps(screen, LOGPIXELSX));
        ReleaseDC(0, screen);
    float fontSize = dpiX / DEFAULT_DPI;
    
        QFont font = a.font();
        font.setPointSize(font.pointSize()*fontSize);
        a.setFont(font);

 

 

注意:需要写在main()里

 

5.QT屏幕分辨率适配

原文:https://www.cnblogs.com/linzloadonbook/p/14864545.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!