一、QProgressBar进度条展示控件
1.基本概念
- QProgressBar进度条展示控件一般用于给用户提供下载上传进度的小部件,在学习QProgressBar进度条展示控件的时候主要是状态,格式,文本操作,外观和信号等。
2.代码
点击查看代码
from PyQt5.Qt import *
import sys
class Window(QWidget) :
def __init__(self) :
super().__init__()
self.setWindowTitle("展示控件-QProgressBar进度条展示控件 - PyQt5中文网")
self.resize(600, 500)
self.func_list()
def func_list(self) :
self.func()
def func(self) :
#1. 创建
pgb = QProgressBar(self)
pgb.move(150, 150)
# pgb.resize(200, 30)
##2.设置最大值、最小值、范围、初始值
# pgb.setMinimum(0)
# pgb.setMaximum(100)
pgb.setRange(0, 100) #范围
# pgb.setRange(0, 0) # 繁忙状态
pgb.setValue(0) #初始值
##3.重置进度条、获取进度
# pgb.reset() # 重置进度条,当前值会变成最小值减一
# pgb.value() # 获取进度
## 4.格式设置
# %p:百分比 %v:当前值 %m:总值
# pgb.setFormat('当前进度:%v , 总共:%m , 下载比例:%p%')
pgb.setFormat('当前进度:{}'.format(pgb.value() - pgb.minimum()))
# pgb.resetFormat() # 重置数据
pgb.setAlignment(Qt.AlignHCenter) # 下载进度水平居中
## 5.文本操作
pgb.setTextVisible(True)
print(pgb.text())
## 6.水平方向、竖直方向展示
# pgb.setOrientation(Qt.Vertical) # 垂直拜访
pgb.setOrientation(Qt.Horizontal) # 水平拜访
## 7.倒立输出
pgb.setInvertedAppearance(False)
# 8.可用信号
# pgb.valueChanged()
time = QTimer(pgb)
## 槽函数
def test() :
if pgb.value() == pgb.maximum() :
time.stop()
pgb.setValue(pgb.value() + 5)
pgb.setFormat('当前进度:{}'.format(pgb.value() - pgb.minimum())) #--->可用作各类行为判定的概率的输出
time.timeout.connect(test)
time.start(1000)
pgb.setFormat('当前进度:{}'.format(pgb.value() - pgb.minimum()))
pgb.valueChanged.connect(lambda val : print('当前下载', val))
if __name__ == '__main__' :
app = QApplication(sys.argv)
window = Window()
window.show()
sys.exit(app.exec_())
## 3.效果
