python如何通过pyqt5实现进度条


Posted in Python onJanuary 20, 2020

这篇文章主要介绍了python如何通过pyqt5实现进度条,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

python太博大精深了,使用场景非常多。最近笔者一直使用PyQt5编一些小程序,顺便就把一些常用的东西列出来,做个记录和积累吧。
进度条是非常常用的东西,今天用的时候,顺便温习了一下,这个东西自己感觉没啥可讲的,最好的办法就是例子来说明:下面给一个简单的例子。

基本进度条使用:

进度条的函数如下:

self.pbar = QProgressBar(self) //进度条的定义

self.pbar.setGeometry(30, 60, 100, 30) //进度条的大小和位置,前两个是位置,后两个是大小

进度条默认一般是长度为100,步长度一般使用一个变量来控制,这个变量要初始化为零,需要清空的时候要记得清零:

self.step = 0

当步长设置的的时候,一定要设置到进度条的属性里面,不然的话意义不大,如下所示:

self.step = self.step+1

self.pbar.setValue(self.step)

 下面是一个基本例子:直接运行即可

#!/usr/bin/python3
# -*- coding: utf-8 -*-

"""
PyQt5 教程

这个例子显示了一个进度条控件。
auther: 虚生
"""
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QProgressBar, QPushButton
from PyQt5.QtCore import QBasicTimer

class Example(QWidget):

  def __init__(self):
    super().__init__()

    self.initUI()

  def initUI(self):

    self.pbar = QProgressBar(self)
    self.pbar.setGeometry(30, 40, 200, 25)

    self.btn = QPushButton('开始', self)
    self.btn.move(40, 80)
    self.btn.clicked.connect(self.doAction)

    self.timer = QBasicTimer()
    self.step = 0
    self.setGeometry(300, 300, 280, 170)
    self.setWindowTitle('进度条')
    self.show()

  def timerEvent(self, e):

    if self.step >= 100:
      self.step = 0
      self.pbar.setValue(self.step)
      self.timer.stop()
      self.btn.setText('完成')
      return
    self.step = self.step+1
    self.pbar.setValue(self.step)

  def doAction(self, value):
    print("do action")
    if self.timer.isActive():
      self.timer.stop()
      self.btn.setText('开始')
    else:
      self.timer.start(100, self)
      self.btn.setText('停止')

if __name__ == '__main__':
   app = QApplication(sys.argv)
   ex = Example()
   sys.exit(app.exec_())

运行结果如下:

python如何通过pyqt5实现进度条

 这个是我pyqt5的github集合里面的一个,本人积累的pyqt5的例子都在里面,有需要的请查看:

https://github.com/DyLanCao/pyqt5_example.git

 还有一个问题备忘:

1 默认的最大个数怎么修改:

self.pbar = QProcessBar(self)

self.pbar.setMaximum(100)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python发送邮件接收邮件示例分享
Jan 21 Python
一个小示例告诉你Python语言的优雅之处
Jul 04 Python
python通过线程实现定时器timer的方法
Mar 16 Python
使用Python读写及压缩和解压缩文件的示例
Jul 08 Python
python使用sqlite3时游标使用方法
Mar 13 Python
python十进制和二进制的转换方法(含浮点数)
Jul 07 Python
Python 2.7中文显示与处理方法
Jul 16 Python
用Python实现大文本文件切割的方法
Jan 12 Python
对django的User模型和四种扩展/重写方法小结
Aug 17 Python
Python数据可视化实现漏斗图过程图解
Jul 20 Python
python 模拟登陆163邮箱
Dec 15 Python
Python如何导出导入所有依赖包详解
Jun 08 Python
python super用法及原理详解
Jan 20 #Python
tensorflow 变长序列存储实例
Jan 20 #Python
在tensorflow中实现去除不足一个batch的数据
Jan 20 #Python
Tensorflow实现在训练好的模型上进行测试
Jan 20 #Python
Python线程条件变量Condition原理解析
Jan 20 #Python
tensorflow tf.train.batch之数据批量读取方式
Jan 20 #Python
Python list运算操作代码实例解析
Jan 20 #Python
You might like
PHP中替换换行符的几种方法小结
2012/10/15 PHP
php字符串函数学习之substr()
2015/03/27 PHP
Yii框架实现对数据库的CURD操作示例
2019/09/03 PHP
PHP基于ip2long实现IP转换整形
2020/12/11 PHP
DOM 脚本编程中的兄弟节点
2009/10/31 Javascript
js调用AJAX时Get和post的乱码解决方法
2013/06/04 Javascript
js 设置缓存及获取设置的缓存
2014/05/08 Javascript
Jquery使用val方法读写value值
2015/05/18 Javascript
XML文件转化成NSData对象的方法
2015/08/12 Javascript
AngularJS过滤器filter用法分析
2016/12/11 Javascript
Vue.js常用指令的使用小结
2017/06/23 Javascript
nodeJS(express4.x)+vue(vue-cli)构建前后端分离实例(带跨域)
2017/07/05 NodeJs
JS实现下拉菜单列表与登录注册弹窗效果
2017/08/10 Javascript
关于JavaScript的单双引号嵌套问题
2017/08/20 Javascript
react-router4按需加载(踩坑填坑)
2019/01/06 Javascript
通过JQuery,JQueryUI和Jsplumb实现拖拽模块
2019/06/18 jQuery
javascript实现前端成语点击验证优化
2020/06/24 Javascript
react antd表格中渲染一张或多张图片的实例
2020/10/28 Javascript
[02:59]2014DOTA2西雅图国际邀请赛 圆满落幕中国夺冠
2014/07/23 DOTA
python实现中文分词FMM算法实例
2015/07/10 Python
pandas DataFrame的修改方法(值、列、索引)
2019/08/02 Python
决策树剪枝算法的python实现方法详解
2019/09/18 Python
python使用OpenCV模块实现图像的融合示例代码
2020/04/10 Python
iRobot官网:改变生活的家用机器人品牌
2016/09/20 全球购物
互动出版网:专业书籍
2017/03/21 全球购物
英国美发和美容产品商城:HQhair
2019/02/08 全球购物
澳大利亚办公室装修:JasonL Office Furniture
2019/06/25 全球购物
写一个方法,输入一个文件名和一个字符串,统计这个字符串在这个文件中出现的次数
2016/04/13 面试题
营业员个人总结的自我评价
2013/10/25 职场文书
总经理驾驶员岗位职责
2013/12/04 职场文书
网吧收银员岗位职责
2013/12/14 职场文书
药剂专业学生求职信范文
2013/12/28 职场文书
打架检讨书100字
2014/01/19 职场文书
安全教育感言
2014/03/04 职场文书
2014年工程师工作总结
2014/11/25 职场文书
辞职信格式模板
2015/02/27 职场文书