当前位置: 首页 > ai >正文

PyQt6基础_QProgressDialog

目录

描述

代码&演示

场景一:显示进度条,不能执行其他操作

场景二:显示进度条,其他操作正常进行 


描述

两种场景

1 显示进度条,不能执行其他操作。应用于串行的任务,就是前一个任务没完成就无法进行下一步。

2 显示进度条,其他操作正常进行。应用于并行,任务彼此不互相影响。

代码&演示

场景一:显示进度条,不能执行其他操作

class TempWidget(QWidget):def __init__(self):super().__init__()self.label = QLabel()btn = QPushButton('哈哈',clicked=self.btn_clicked)btn00 = QPushButton('关闭',clicked=self.btn_clicked00)layout = QVBoxLayout()layout.addWidget(self.label)layout.addWidget(btn)layout.addWidget(btn00)self.setLayout(layout)passdef btn_clicked(self):self.progress = QProgressDialog('正在查询...',None,0,0,self)self.progress.setWindowFlags(self.progress.windowFlags() & ~Qt.WindowType.WindowCloseButtonHint)self.progress.setWindowModality(Qt.WindowModality.WindowModal)# self.progress.setWindowModality(Qt.WindowModality.NonModal)self.progress.show()self.steps = 0self.t = QTimer()self.t.timeout.connect(self.t_timeout)self.t.start(1000) # 每1000毫秒触发一次passdef btn_clicked00(self):self.t.stop()self.progress.cancel()passdef t_timeout(self):self.label.setText(str(self.steps))self.steps +=1if self.steps >=10:self.t.stop()self.progress.cancel()pass

在运行过程中,“关闭”按钮无法操作。当任务(定时器走10次)完成,进度框自动关闭。

场景二:显示进度条,其他操作正常进行 

self.progress.setWindowModality(Qt.WindowModality.NonModal)

将 setWindowModality 值设置为非模式

 

进度条运行时,“关闭”按钮可以操作 

http://www.xdnf.cn/news/1657.html

相关文章:

  • Discuz!+DeepSeek赋能虎跃办公:传统网址导航的智能进化之路
  • Python实例题:使用Pvthon3编写系列实用脚本
  • 【Java】jdk8安装——英文版
  • Java快速上手之实验4(接口回调)
  • 第13章:MCP服务端项目开发实战:向量检索
  • 如何在Spring Boot中配置自定义端口运行应用程序
  • 2025上海车展:光峰科技全球首发“灵境”智能车载光学系统
  • linux 中断子系统 层级中断编程
  • 【PVCodeNet】《Palm Vein Recognition Network Combining Transformer and CNN》
  • Python中random库的应用
  • openwrt作旁路由时的几个常见问题 openwrt作为旁路由配置zerotier 图文讲解
  • 【项目管理】进度网络图 笔记
  • Redis--预备知识以及String类型
  • 【刷题系列】LeetCode消失的数字、轮转数组
  • 前端微服务详解
  • Datawhale AI春训营——用AI帮助老人点餐
  • Redis 及其在系统设计中的作用
  • Docker 的基本概念和优势以及在应用程序开发中的实际应用
  • 金融行业一体化运维监控平台解决方案
  • 阶段性人生答疑解惑篇:穿越市场迷雾,重构生命坐标系
  • Java Thread类深度解析:构造方法与核心方法全攻略
  • 多级缓存架构深度解析:从设计原理到生产实践
  • 【AI提示词】艺人顾问
  • Turso:一个基于 libSQL的分布式数据库
  • 最新AI-Python机器学习与深度学习技术在植被参数反演中的核心技术应用
  • Vue.js 的组件化开发指南
  • 四、Python编程基础04
  • 【ES实战】Elasticsearch中模糊匹配类的查询
  • 【嵌入式系统设计师(软考中级)】第二章:嵌入式系统硬件基础知识(2)
  • 常见接口测试常见面试题(JMeter)