python如何通過pyqt5實現(xiàn)進(jìn)度條

主要介紹了python如何通過pyqt5實現(xiàn)進(jìn)度條,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
python太博大精深了,使用場景非常多。最近筆者一直使用PyQt5編一些小程序,順便就把一些常用的東西列出來,做個記錄和積累吧。
進(jìn)度條是非常常用的東西,今天用的時候,順便溫習(xí)了一下,這個東西自己感覺沒啥可講的,最好的辦法就是例子來說明:下面給一個簡單的例子。
基本進(jìn)度條使用
進(jìn)度條的函數(shù)如下:
self.pbar = QProgressBar(self) //進(jìn)度條的定義self.pbar.setGeometry(30, 60, 100, 30) //進(jìn)度條的大小和位置,前兩個是位置,后兩個是大小
進(jìn)度條默認(rèn)一般是長度為100,步長度一般使用一個變量來控制,這個變量要初始化為零,需要清空的時候要記得清零:
self.step = 0當(dāng)步長設(shè)置的的時候,一定要設(shè)置到進(jìn)度條的屬性里面,不然的話意義不大,如下所示:
self.step = self.step+1self.pbar.setValue(self.step)
基本例子
#!/usr/bin/python3# -*- coding: utf-8 -*-"""PyQt5 教程這個例子顯示了一個進(jìn)度條控件。"""import sysfrom PyQt5.QtWidgets import QApplication, QWidget, QProgressBar, QPushButtonfrom PyQt5.QtCore import QBasicTimerclass 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 = 0self.setGeometry(300, 300, 280, 170)self.setWindowTitle('進(jìn)度條')self.show()def timerEvent(self, e):if self.step >= 100:self.step = 0self.pbar.setValue(self.step)self.timer.stop()self.btn.setText('完成')returnself.step = self.step+1self.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_())
運行結(jié)果

還有一個問題備忘:
默認(rèn)的最大個數(shù)怎么修改:
self.pbar = QProcessBar(self)self.pbar.setMaximum(100)
「?? 感謝大家」
如果你覺得這篇內(nèi)容對你挺有有幫助的話:
點贊支持下吧,讓更多的人也能看到這篇內(nèi)容(收藏不點贊,都是耍流氓 -_-) 歡迎在留言區(qū)與我分享你的想法,也歡迎你在留言區(qū)記錄你的思考過程。 覺得不錯的話,也可以閱讀近期梳理的文章(感謝鼓勵與支持??????):
老鐵,三連支持一下,好嗎?↓↓↓


點分享

點點贊

點在
評論
圖片
表情

