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

时间:2022-11-29 03:37:14

一  关于模态设置

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();

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

QT QProgressBar QProgressDialog 模态,位置设置,无边框,进度条样式的更多相关文章

  1. 【Qt编程】基于Qt的词典开发系列<五>--无边框窗口的拖动

    在上一篇文章中,我们讲述了如何进行无边框窗口的缩放与拖动,而在一些情况下,我们的窗口只需要进行拖动也不需要改变其大小,比如:QQ的登录窗口.本来在上一篇文章中已经讲述了如何进行窗口的拖动,但是却与窗口 ...

  2. 【Qt编程】基于Qt的词典开发系列<四>--无边框窗口的缩放与拖动

    在现在,绝大多数软件都向着简洁,时尚发展.就拿有道的单词本和我做的单词本来说,绝大多数用户肯定喜欢我所做的单词本(就单单界面,关于颜色搭配和布局问题,大家就不要在意了). 有道的单词本: 我所做的单词 ...

  3. QT: 如何移动和缩放一个无边框窗口

    一个QT窗口如下可以做到无边框: Window { id: window //Designer 竟然不支持..., 设计模式时要注意 flags: Qt.FramelessWindowHint wid ...

  4. JavaFX窗体设置无边框

    public void start(Stage stage) throws Exception { longStart(); Parent root = FXMLLoader.load(getClas ...

  5. Qt - QDialog,QWidget实现模态及非模态(模态Widget不能有父窗口,如果设置无边框就不能阻塞父窗口,但是可以强行设置指定Qt::Dialog,还可以setAttribute(Qt::WA_ShowModal),很多讲究)good

    在Qt中QDialog为“窗口”,而QWidget为“部件”,首先还是了解下<Qt 窗口与部件的概念>. 对于 QDialog 的模态及非模态是直接可以实现的,很多课本中都会提到,此处总结 ...

  6. C&num;之设置无边框后如何移动窗体(转)

    转载:http://www.cnblogs.com/techmango/archive/2012/03/31/2427523.html 第一种,利用windows的消息机制来实现: 首先﹐.定义鼠標左 ...

  7. 【MFC】WM&lowbar;GETMINMAXINFO 设置无边框窗口最大花不遮挡任务栏

    LRESULT OnGetMinMaxInfo( UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/ ) { ...

  8. Qt无边框窗体-模拟模态窗体抖动效果

    目录 一.概述 二.效果展示 三.功能实现 四.相关文章 原文链接:Qt无边框窗体-模拟模态窗体抖动效果 一.概述 用Qt开发windows客户端界面确实是一大利器,兼顾性能的同时,速度相对来说也不错 ...

  9. 【Qt】Qt之自定义界面(实现无边框、可移动)【转】

    简述 UI设计是指对软件的人机交互.操作逻辑.界面美观的整体设计.好的UI设计不仅是让软件变得有个性.有品位,还要让软件的操作变得舒适简单.*,充分体现软件的定位和特点. 爱美之心人皆有之.其实软件 ...

随机推荐

  1. HTTPS 协议和原理

    1 HTTPS 协议概述 HTTPS 可以认为是 HTTP + TLS.HTTP 协议大家耳熟能详了,目前大部分 WEB 应用和网站都是使用 HTTP 协议传输的. TLS 是传输层加密协议,它的前身 ...

  2. Web API Filter ActionFilterAttribute 使用

    WebApi 提供两种过滤器的类型: 1.ActionFilterAttribute 2.exceptionFilterAttribute 两个类都是抽象类,ActionFilter 主要实现执行请求 ...

  3. C字符串和C&plus;&plus;中string的区别 &amp&semi;&amp&semi;&amp&semi;&amp&semi;C&plus;&plus;中int型与string型互相转换

    在C++中则把字符串封装成了一种数据类型string,可以直接声明变量并进行赋值等字符串操作.以下是C字符串和C++中string的区别:   C字符串 string对象(C++) 所需的头文件名称 ...

  4. text-indent&colon; -999px&semi;是什么意思

    就是把该元素内的文字移到屏幕外面去,让我们肉眼看不见,有时候是因为如某栏目名称的文字或者logo的文字已经用背景图片代替了,我们不需要眼睛看见那些文字,但是希望搜索引擎可以搜到,就可以用这个把文字“隐 ...

  5. selenium IDE中log的保存与查看方法

    下载selenium IDE的log保存插件为File Logging(selenium IDE),下载安装方式如下: (1)打开firefox浏览器----点击右上角----附加组件---插件--- ...

  6. 从零开始学TensorFlow

    前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 最近在学习TensorFlow的相关知识,了解了Te ...

  7. vue动态设置初始页

  8. 关于ajax的与后台Controller的交互 后台拿不到值

    话不多说 上代码 这是前段js的代码        传的两个参数    cLassid  和  userid $.ajax({ type:"post", url:"../ ...

  9. -1-6 java 异常简单介绍 java异常 异常体系 Throwable 分类 throws和throw 异常处理 自定义异常

      异常   异常:异常就是Java程序在运行过程中出现的错误. 异常由来:问题也是现实生活中一个具体事务,也可以通过java 的类的形式进行描述,并封装成对象. 其实就是Java对不正常情况进行描述 ...

  10. linux shell必知必会sed、awk

    sed是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往 ...