国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

PyQt5每天必學之進度條效果

2020-02-22 23:43:24
字體:
來源:轉載
供稿:網友

進度條是,當我們處理冗長的任務時使用的控件。它是以動畫的形式讓用戶知道該任務正在取得進展。該QProgressBar控件提供一個水平或垂直進度條。程序員可以設置進度條的最小值和最大值。默認值是0到99。

#!/usr/bin/python3# -*- coding: utf-8 -*-"""PyQt5 教程這個例子顯示了一個進度條控件。作者:我的世界你曾經來過博客:http://blog.csdn.net/weiaitaowang最后編輯:2016年8月3日"""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 = 0  self.setGeometry(300, 300, 280, 170)  self.setWindowTitle('進度條')    self.show() def timerEvent(self, e):  if self.step >= 100:   self.timer.stop()   self.btn.setText('完成')   return  self.step = self.step+1  self.pbar.setValue(self.step) def doAction(self, value):  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_())

在我們的例子,我們有一個水平進度條控件和一個按鈕控件。點擊按鈕啟動或停止進度條。

self.pbar = QProgressBar(self)

使用 QProgressBar 創建進度條

self.timer = QBasicTimer()

激活進度條,我們需使用一個計時器對象。

self.timer.start(100, self)

要啟動定時器事件,我們需調用它的start()方法。這種方法有兩個參數:超時和將接收的事件的對象。

 def timerEvent(self, e):  if self.step >= 100:   self.timer.stop()   self.btn.setText('完成')   return  self.step = self.step+1  self.pbar.setValue(self.step)

每個繼承自QObject 的對象都有一個timerEvent()事件處理程序。為了定時器事件作用到進度條,我們重寫了這個事件處理程序。

 def doAction(self, value):  if self.timer.isActive():   self.timer.stop()   self.btn.setText('開始')  else:   self.timer.start(100, self)   self.btn.setText('停止')

使用 doAction() 方法啟動和停止計時器。

程序執行后

這里寫圖片描述 這里寫圖片描述 這里寫圖片描述

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新安县| 孝义市| 永定县| 安宁市| 商南县| 平阳县| 无极县| 丰原市| 德钦县| 闽侯县| 昭通市| 张家口市| 遂溪县| 垣曲县| 东乌珠穆沁旗| 象山县| 南京市| 芦溪县| 平阴县| 闸北区| 太仆寺旗| 巴南区| 北票市| 上高县| 木里| 永泰县| 绍兴县| 司法| 讷河市| 新密市| 德庆县| 淮北市| 莲花县| 宾阳县| 永胜县| 通化市| 长兴县| 永登县| 本溪| 屏东市| 临泽县|