qt-13 进度条(模态和非模态)

进度条-模态和非模态

  • progressdlg.h
  • progressdlg.cpp
  • main.cpp
  • 运行图
    • 模态
    • 非模态

progressdlg.h

#ifndef PROGRESSDLG_H
#define PROGRESSDLG_H#include <QDialog>
#include <QLabel>
#include <QLineEdit>
#include <QProgressBar>
#include <QComboBox>
#include <QPushButton>
#include <QGridLayout>class progressDlg : public QDialog
{Q_OBJECTpublic:progressDlg(QWidget *parent = nullptr);~progressDlg();
private slots:void StartProgress();
private:QLabel* FileNum;QLineEdit* FileNumLineEdit;QLabel* ProgressType;QComboBox* ComboBox;QProgressBar* ProgressBar;QPushButton* StartBtn;QGridLayout* MainLayout;
};
#endif // PROGRESSDLG_H

progressdlg.cpp

#include "progressdlg.h"
#include <QProgressDialog>
#include <QFont>
progressDlg::progressDlg(QWidget *parent): QDialog(parent)
{//实例化对象以及配置QFont font("ZYsong18030",12);setFont(font);setWindowTitle(tr("Progress"));FileNum = new QLabel(tr("文件数目"));FileNumLineEdit = new QLineEdit(tr("100000"));ProgressType = new QLabel("显示类型:");ComboBox = new QComboBox;ComboBox->addItem(tr("progressbar"));ComboBox->addItem(tr("progressDialog"));ProgressBar = new QProgressBar;StartBtn = new QPushButton(tr("开始"));//布局MainLayout = new QGridLayout(this);MainLayout->setMargin(15);MainLayout->setSpacing(10);MainLayout->addWidget(FileNum,0,0);MainLayout->addWidget(FileNumLineEdit,0,1);MainLayout->addWidget(ProgressType,1,0);MainLayout->addWidget(ComboBox,1,1);MainLayout->addWidget(ProgressBar,2,0,1,2);MainLayout->addWidget(StartBtn,3,1);//绑定事件connect(StartBtn,SIGNAL(clicked()),this,SLOT(StartProgress()));}progressDlg::~progressDlg() {}void progressDlg::StartProgress()
{bool Ok;int nNum = FileNumLineEdit->text().toInt(&Ok);if(ComboBox->currentIndex() ==0){ProgressBar->setRange(0,nNum);nNum++;for(int i=0;i<nNum;i++){ProgressBar->setValue(i);}}else if(ComboBox->currentIndex() == 1){//创建一个进度对话框QProgressDialog* ProgressDialog = new QProgressDialog(this);QFont font("ZYSong18030",12);ProgressDialog->setFont(font);ProgressDialog->setWindowModality(Qt::WindowModal);ProgressDialog->setMinimumDuration(5);ProgressDialog->setWindowTitle(tr("please wait"));ProgressDialog->setLabelText(tr("Copy....."));ProgressDialog->setCancelButtonText(tr("cancel"));ProgressDialog->setRange(0,nNum);nNum++;for(int i =0;i<nNum;i++){ProgressDialog->setValue(i);if(ProgressDialog->wasCanceled()){return;}}}}

main.cpp

#include "progressdlg.h"#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);progressDlg w;w.show();return a.exec();
}

运行图

模态

在这里插入图片描述

非模态

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/877616.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

人物形象设计:塑造独特角色的指南

引言 人物形象设计是一种创意过程&#xff0c;它利用强大的设计工具&#xff0c;通过视觉和叙述元素塑造角色的外在特征和内在性格。这种设计不仅赋予角色以生命&#xff0c;还帮助观众或读者在心理层面上与角色建立联系。人物形象设计的重要性在于它能够增强故事的吸引力和说…

p8 Run的流程和Docker原理

docker run的运行原理图 docker是怎么工作的&#xff1f; docker是一个cs的一个结构的系统docker的守护进程运行在宿主机上面通过socket进行访问 其实就是看下面的这个图&#xff0c;通过客户端的命令来操作docker的守护进程然后启动一些容器&#xff0c;默认容器是不启动的 …

网络基础概念【网络】

文章目录 网络协议协议分层 OSI七层模型TCP/IP五层&#xff08;或四层&#xff09;模型同局域网的两台主机通信数据包封装和解包分用&#xff08;数据段&#xff0c;数据报&#xff0c;数据帧&#xff09;网络中的地址管理 网络协议 协议分层 网络协议栈设计成层状结构&#…

【学习笔记】Day 20

一、进度概述 1、机器学习常识12-18&#xff0c;以及相关代码复现 二、详情 12、SVM&#xff08;support vector machines&#xff0c;支持向量机&#xff09; 实际上&#xff0c;支持向量机是一种二分类模型&#xff0c;它将实例的特征向量映射为空间中的一些点&#xff0c;…

如何将CSDN文章导出为pdf文件

第一步&#xff1a; 打开想要导出的页面&#xff0c;空白处点击鼠标右键⇒点击“检查”或“check”&#xff0c;或直接在页面按F12键。 第二步&#xff1a; 复制以下代码粘贴到控制台&#xff0c;并按回车。 若提示让输入“允许粘贴”或“allow pasting”&#xff0c;按提示…

Redis 用于高效的队列管理和临时缓存,支持每分钟处理数千笔订单的高并发场景

为了支持高并发订单处理&#xff0c;并结合 MySQL 进行持久化&#xff0c;可以将 Redis 用于高效的队列管理和临时缓存&#xff0c;而 MySQL 用于最终数据存储。下面是一个结合 Redis 和 MySQL 的完整示例。 MySQL 表结构 首先&#xff0c;需要定义 MySQL 表结构来存储订单和…

python——concurrent.futures

concurrent.futures 是 Python 标准库中用于并行编程的高级模块&#xff0c;它提供了一种高级别的接口来管理线程和进程。通过这个模块&#xff0c;你可以轻松地利用多线程和多进程来并行执行任务&#xff0c;进而提高程序的执行效率。 1. concurrent.futures 概述 concurren…

百度地图路书实现历史轨迹回放、轨迹回放进度、聚合点、自定义弹框和实时监控视频、多路视频轮巡播放

前言 分享一个刚做完项目集成技术&#xff0c;一个车辆行驶轨迹监控、行车视频监控、对特种车辆安全监管平台&#xff0c;今年政府单位有很多监管平台项目&#xff0c;例如&#xff1a;渣土车监控、租出车监管、危害气体运输车监管等平台&#xff0c;这些平台都有车辆行驶轨迹…

2024年电赛H题全开源

当题目出来的的那一刻&#xff0c;看到了M0芯片&#xff0c;我们实验室只有一块板子&#xff0c;并且我没有接触过M0&#xff0c;电赛只准备了TI的MSP430f5529。但是我并没有放弃&#xff0c;决然的选择了H题。基本上将四问全做出来&#xff0c;可是测试由于使用了感为科技的寻…

OGR-矢量筛选

OGR-矢量筛选 1.属性筛选 # 根据字段属性进行过滤 ds ogr.Open(os.path.join(data_dir, global)) lyr ds.GetLayer(ne_50m_admin_0_countries) >1 lyr.SetAttributeFilter(continent "Asia") lyr.GetFeatureCount() >2:二次筛选 # You can still get a fe…

Go 语言类型转换 19

Go 语言支持类型转换&#xff0c;用于将一个值从一种类型转换到另一种类型。类型转换可以是隐式的&#xff0c;也可以是显式的。 隐式类型转换 Go 语言支持隐式类型转换&#xff0c;例如&#xff1a; i : 42 f : float64(i)上面的代码隐式地将整数 i 转换为浮点数 f。 显式…

Linux基础知识学习(五)

1. 用户组管理 每个用户都有一个用户组&#xff0c;系统可以对一个用户组中的所有用户进行集中管理&#xff08;开发、测试、运维、root&#xff09;。不同Linux 系统对用户组的规定有所不同&#xff0c;如Linux下的用户属于与它同名的用户组&#xff0c;这个用户组在创建用户…

Java 前端与后端交互:解锁 RESTful API 设计的秘密

引言 随着互联网技术的快速发展&#xff0c;前后端分离已经成为现代 Web 开发的主流趋势之一。在这个过程中&#xff0c;RESTful API 成为了连接前端界面与后端数据处理的重要桥梁。作为一位拥有20年实战经验的编码专家&#xff0c;我见证了 RESTful API 在不同场景中的广泛应…

QT聊天室基于Tcp

server.cpp #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget),server(new QTcpServer(this)) // 给服务器指针对象实例化空间{ui->setupUi(this); }Widget::~Widget() {delete ui; }…

LLVM - 编译器后端-指令选择

一:概述 任何后端的核心都是指令选择。LLVM 实现了几种方法;在本篇文章中,我们将通过选择有向无环图(DAG)和全局指令选择来实现指令选择。 在本篇文章中,我们将学习以下主题: • 定义调用约定规则:本节展示如何在目标描述中设置调用约定的规则。 • 通过选择 D…

音频采集spring_ws_webrtc (html采集麦克风转gb711并发送广播播放)完整案例

下载地址&#xff1a;http://www.gxcode.top/code 项目说明 springbootwebscoektwebrtc 项目通过前端webrtc采集麦克风声音&#xff0c;通过websocket发送后台&#xff0c;然后处理成g711-alaw字节数据发生给广播UDP并播放。 后台处理项目使用线程池(5个线程)接受webrtc数据并…

mac如何恢复被同名替换掉的文件夹 mac文件被替换如何恢复

Mac系统一直以高性能遥遥领先其他的Windows系统&#xff0c;因此&#xff0c;Mac虽然价格远远高出其他的笔记本电脑&#xff0c;但是还是受到了一众用户的青睐。使用mac时&#xff0c;我们也经常会将一个文件命名为已经有了相同文件的文件名&#xff0c;且保存到同一个目标地址…

SQL - 内置函数

处理数值数据的函数 round(3.555,2) //四舍五入&#xff0c;第二个参数为精度值&#xff0c;为3.56 truncate(3.999,2) //用来截断数字&#xff0c;第二个参数为保留位数&#xff0c;为3.99 ceiling(7.1) //上限函数&#xff0c;返回不小于数字的最小整数&#xff0c;为8 foolr…

MATLAB-PSO-BiTCN-BiLSTM-Attention多变量分类

一、数据集 数据特征&#xff1a;12个多分类&#xff1a;4分类 ​ 二、PSO-BiTCN-BiLSTM-Attention网络 PSO-BiTCN-BiLSTM-Attention 网络是一种结合了多种深度学习技术和优化算法的复杂模型&#xff0c;用于处理时序数据任务&#xff0c;如时间序列预测、分类或其他相关问题…

白骑士的HTML教学实战项目篇 4.1 创建个人网站

创建个人网站不仅是展示自己作品、技能和兴趣的理想方式&#xff0c;也是实践HTML、CSS、JavaScript等前端技术的绝佳机会。在本篇博客中&#xff0c;我们将带你一步步构建一个功能齐全、视觉美观的个人网站。从最初的网站规划与设计&#xff0c;到实现页面导航与布局&#xff…