真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網站制作重慶分公司

PyQt5每天必學之進度條效果-創(chuàng)新互聯(lián)

小編給大家分享一下PyQt5每天必學之進度條效果,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

創(chuàng)新互聯(lián)公司致力于網站設計、網站建設,成都網站設計,集團網站建設等服務標準化,推過標準化降低中小企業(yè)的建站的成本,并持續(xù)提升建站的定制化服務水平進行質量交付,讓企業(yè)網站從市場競爭中脫穎而出。 選擇創(chuàng)新互聯(lián)公司,就選擇了安全、穩(wěn)定、美觀的網站建設服務!

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

#!/usr/bin/python3
# -*- coding: utf-8 -*-

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QProgressBar, QPushButton
from PyQt5.QtCore import QBasicTimer

class 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 創(chuàng)建進度條

self.timer = QBasicTimer()

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

self.timer.start(100, self)

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

 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() 方法啟動和停止計時器。

程序執(zhí)行后

PyQt5每天必學之進度條效果 PyQt5每天必學之進度條效果 PyQt5每天必學之進度條效果

以上是“PyQt5每天必學之進度條效果”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


網站標題:PyQt5每天必學之進度條效果-創(chuàng)新互聯(lián)
鏈接分享:http://weahome.cn/article/dpdejj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部