常用方法
方法值说明setRangeQProgressBar.setRange(min, Max)通过 setRange 方法设定步骤个数setValueQProgressBar.setValue(number)QProgressBar.setValue()该方法设置进度条的当前值,value值不停地增加,进度就在增加 例如:setValue(5) : 假如整个step是10,则表示完成整个步骤的5/10,即50%setMaximum()0 — 99 例如:QProgressBar.setMaximum(99)设置step的最大值,默认值是99 例如:QProgressBar.setMaximum(99) 表示step最大值为99setMinimum()0 — 99 例如:QProgressBar.setMinimum(0)设置stepd最小值,默认值是0 例如:QProgressBar.setMinimum(0) 表示step最小值为0reset()QProgressBar.reset()设置进度条重新开始setOrientationQProgressBar.setOrientation(Qt.Horizontal) QProgressBar.setOrientation(Qt.Vertical)QProgressBar.setOrientation()该属性设置了进度条的方向; 方向必须是Qt.Horizontal(默认,水平)或Qt.Vertical(垂直) 注意:水平和垂直,需导入 from PyQt5.QtCore import QtsetFormat%p% — 被完成的百分比取代%v% — 被当前值替换%m% — 被总step所取代 默认值是 : %p% 注意:如果没有加第二个%(即%p),显示的指数则没有%QProgressBar.setFormat()属性包含用于生成当前文本的字符串setInvertedAppearancesetInvertedAppearance(True) setInvertedAppearance(False)设置进度条的走向; QProgressBar.setInvertedAppearance(True) 进度条从左到右(水平进度条)/从上到下(垂直进度条) QProgressBar.setInvertedAppearance(False) 进度条从右到左(水平进度条)/从下到上(垂直进度条)实例:
import sysfrom PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QProgressBarfrom PyQt5.QtCore import QBasicTimerclass MyClass(QWidget):def __init__(self):super().__init__()self.initUI()def initUI(self):self.resize(300, 200)# 载入进度条控件self.pgb = QProgressBar(self)self.pgb.move(50, 50)self.pgb.resize(250, 20)# 配置一个值表示进度条的当前进度self.pv = 0# 申明一个时钟控件self.timer1 = QBasicTimer()# 设置进度条的范围self.pgb.setMinimum(0)self.pgb.setMaximum(100)self.pgb.setValue(self.pv)# 载入按钮self.btn = QPushButton("开始", self)self.btn.move(50, 100)self.btn.clicked.connect(self.myTimerState)self.show()def myTimerState(self):if self.timer1.isActive():self.timer1.stop()self.btn.setText("开始")else:self.timer1.start(100, self)self.btn.setText("停止")def timerEvent(self, e):if self.pv == 100:self.timer1.stop()self.btn.setText("完成")else:self.pv += 1self.pgb.setValue(self.pv)if __name__ == "__main__":app = QApplication(sys.argv)mc = MyClass()app.exec_()
参考:
PyQt5 进度条(QProgressBar)的使用 - Q公子 - 博客园https://www.cnblogs.com/itwangqiang/articles/14959401.html