• QT QProgressBar QProgressDialog 模态,位置设置,无边框,进度条样式


    一  关于模态设置

    QProgressDialog可以设置模态(需要在new的时候传入parent),QProgressBar设置不好;

    只有dialog可以设置模态,widget不能设置模态(QProgressBar继承自widget)

    二  关于位置设置

    子窗口要相对于父窗口设置合适的位置,父窗口在屏幕上移动,子窗口对应跟着改变大小与位置:

    1 先设置子窗口的width与height,可以按父窗口的比例来;

    2 然后以父窗口的左上角为原点计算子窗口的位置QPoint;

    3 将2中的位置使用父窗口的mapToGlobal换算到屏幕的位置;

    4 将3中得到的位置设置给子窗口;

    如果子窗口设置成无边框的,则子窗口位置设置自动转换成相对于父窗口的位置,此时不再需要转换屏幕坐标设置;

    三  关于无边框,无取消按钮

    setCancelButton(0);//隐藏取消按钮
    
    setWindowFlags(Qt::FramelessWindowHint);//无边框 
    
    setStyleSheet("QWidget{background-color: rgb(255,255,255);}");//背景板是白色

    四  关于进度条样式

    取消显示百分比,QProgressBar的setTextVisiable可以设置;

    但是QProgressDialog没有setTextVisiable怎么办?

    这时new一个QProgressBar(该QProgressDialog可构造设置为其parent,方便管理),

    然后QProgressDialog调用setBar即可;

    progressBar再设置setTextVisiable(false)即可。

    进度条还可以设置QSS样式;

    五 进度条大小控制

    有setFixedSize()与setMinminSize();

    先设置最小大小,然后设置固定大小,则最小限制被抵消;反之则可行;

  • 相关阅读:
    iis 500
    无线密码获取
    数据库创建
    系统基础配置指令
    手把手教你用ngrx管理Angular状态
    vue中v-cloak解决刷新或者加载出现闪烁(显示变量)
    HBuilder如何与真机连接
    01 spring boot源码阅读参考
    01 git学习笔记参考
    OAuth2授权基础知识
  • 原文地址:https://www.cnblogs.com/ningmouming/p/10698446.html
Copyright © 2020-2023  润新知