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中查找excel某一列的重复数据 剔除之后打印
Feb 10 Python
Python中的ceil()方法使用教程
May 14 Python
使用FastCGI部署Python的Django应用的教程
Jul 22 Python
python各种语言间时间的转化实现代码
Mar 23 Python
python实现域名系统(DNS)正向查询的方法
Apr 19 Python
Python实现两个list求交集,并集,差集的方法示例
Aug 02 Python
Python读取YUV文件,并显示的方法
Dec 04 Python
简单了解python数组的基本操作
Nov 26 Python
python 连续不等式语法糖实例
Apr 15 Python
Scrapy爬虫文件批量运行的实现
Sep 30 Python
利用python制作拼图小游戏的全过程
Dec 04 Python
django学习之ajax post传参的2种格式实例
May 14 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
全国FM电台频率大全 - 23 四川省
2020/03/11 无线电
php xml 入门学习资料
2011/01/01 PHP
PHP register_shutdown_function函数的深入解析
2013/06/03 PHP
PHP 转义使用详解
2013/07/15 PHP
非常重要的php正则表达式详解
2016/01/04 PHP
利用Laravel事件系统如何实现登录日志的记录详解
2017/05/20 PHP
PHP迭代器接口Iterator用法分析
2017/12/28 PHP
PHP实现数组和对象的相互转换操作示例
2019/03/20 PHP
学习YUI.Ext 第七天--关于View&JSONView
2007/03/10 Javascript
JS 图片缩放效果代码
2010/06/09 Javascript
使用jquery的ajax需要注意的地方dataType的设置
2013/08/12 Javascript
jQuery实现强制cookie过期方法汇总
2015/05/22 Javascript
JS+HTML5手机开发之滚动和惯性缓动实现方法分析
2016/06/12 Javascript
html+js实现简单的计算器代码(加减乘除)
2016/07/12 Javascript
基于JavaScript实现添加到购物车效果附源码下载
2016/08/22 Javascript
Vue下的国际化处理方法
2017/12/18 Javascript
vue中使用refs定位dom出现undefined的解决方法
2017/12/21 Javascript
vuex实现登录状态的存储,未登录状态不允许浏览的方法
2018/03/09 Javascript
React为 Vue 引入容器组件和展示组件的教程详解
2018/05/03 Javascript
vue单页面在微信下只能分享落地页的解决方案
2019/04/15 Javascript
[00:31]2016完美“圣”典风云人物:国士无双宣传片
2016/12/04 DOTA
[01:18:45]DOTA2-DPC中国联赛 正赛 DLG vs Dragon BO3 第三场2月1日
2021/03/11 DOTA
Python读写及备份oracle数据库操作示例
2018/05/17 Python
Python基于聚类算法实现密度聚类(DBSCAN)计算【测试可用】
2018/12/26 Python
给你一面国旗 教你用python画中国国旗
2019/09/24 Python
python手写均值滤波
2020/02/19 Python
Python学习之路安装pycharm的教程详解
2020/06/17 Python
在HTML5中如何使用CSS建立不可选的文字
2014/10/17 HTML / CSS
HTML5实现可缩放时钟代码
2017/08/28 HTML / CSS
机械专业技术员求职信
2014/06/14 职场文书
物理教育专业求职信
2014/06/25 职场文书
聘用意向书
2014/07/29 职场文书
销售竞赛活动方案
2014/08/23 职场文书
《爱的教育》读书心得
2014/11/08 职场文书
个人党性锻炼总结
2015/03/05 职场文书
中学语文教学反思
2016/02/16 职场文书