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 14 Python
Python实现在Linux系统下更改当前进程运行用户
Feb 04 Python
Python数组定义方法
Apr 13 Python
python通过opencv实现批量剪切图片
Nov 13 Python
python中的不可变数据类型与可变数据类型详解
Sep 16 Python
详解python中的数据类型和控制流
Aug 08 Python
基于TensorFlow常量、序列以及随机值生成实例
Jan 04 Python
Python字符串中删除特定字符的方法
Jan 15 Python
tensorflow中tf.reduce_mean函数的使用
Apr 19 Python
python3获取控制台输入的数据的具体实例
Aug 16 Python
python 爬虫网页登陆的简单实现
Nov 30 Python
python中delattr删除对象方法的代码分析
Dec 15 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中用PHPMailer来发送邮件的示例(126.com的例子)
2013/06/24 PHP
XAMPP安装与使用方法详细解析
2013/11/27 PHP
PHP编程中的常见漏洞和代码实例
2014/08/06 PHP
php输出反斜杠的实例方法
2019/09/19 PHP
Mootools 1.2教程 选项卡效果(Tabs)
2009/09/15 Javascript
轻松创建nodejs服务器(3):代码模块化
2014/12/18 NodeJs
详解 javascript中offsetleft属性的用法
2015/11/11 Javascript
jQuery操作基本控件方法实例分析
2015/12/31 Javascript
javascript正则表达式定义(语法)总结
2016/01/08 Javascript
JQuery的常用选择器、过滤器、方法全面介绍
2016/05/25 Javascript
对javascript继承的理解
2016/10/11 Javascript
微信页面倒计时代码(解决safari不兼容date的问题)
2016/12/13 Javascript
jQuery插件HighCharts绘制2D柱状图、折线图的组合双轴图效果示例【附demo源码下载】
2017/03/09 Javascript
javascript 日期相减-在线教程(附代码)
2017/08/17 Javascript
3种vue组件的书写形式
2017/11/29 Javascript
javascript将json格式数组下载为excel表格的方法
2017/12/22 Javascript
使用Vue开发一个实时性时间转换指令
2018/01/17 Javascript
深入浅析Vue中的slots/scoped slots
2018/04/03 Javascript
基于vue实现可搜索下拉框定制组件
2020/03/26 Javascript
在vue-cli 3中给stylus、sass样式传入共享的全局变量
2019/08/12 Javascript
mpvue实现微信小程序快递单号查询代码
2020/04/03 Javascript
vue - props 声明数组和对象操作
2020/07/30 Javascript
使用python提取html文件中的特定数据的实现代码
2013/03/24 Python
利用pyinstaller将py文件打包为exe的方法
2018/05/14 Python
python 定时任务去检测服务器端口是否通的实例
2019/01/26 Python
Python3中的最大整数和最大浮点数实例
2019/07/09 Python
澳大利亚领先的时尚内衣零售商:Bras N Things
2020/07/28 全球购物
哈萨克斯坦移动和数字技术在线商店:SatelOnline.kz
2020/09/04 全球购物
两道JAVA笔试题
2016/09/14 面试题
信息管理员岗位职责
2013/12/01 职场文书
《唯一的听众》教学反思
2014/02/20 职场文书
2014大学生全国两会学习心得体会
2014/03/13 职场文书
党的群众路线教育实践活动教师自我剖析材料
2014/10/09 职场文书
公司承诺函范文
2015/01/21 职场文书
导游词之镇江-金山寺
2019/10/14 职场文书
MySQL kill不掉线程的原因
2021/05/07 MySQL