9.3 QProgressBar進度條展示控制元件
阿新 • • 發佈:2022-04-13
一、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_())