1. 程式人生 > 程式設計 >Python PyQt5模組實現視窗GUI介面程式碼例項

Python PyQt5模組實現視窗GUI介面程式碼例項

PyQt5是基於Digia公司強大的圖形程式框架Qt5的python介面,由一組python模組構成。PyQt5本身擁有超過620個類和6000函式及方法。在可以運行於多個平臺,包括:Unix,Windows,and Mac OS。

程式碼如下

from PyQt5.QtWidgets import QApplication,QWidget,QProgressBar,QPushButton
from PyQt5.QtCore import QBasicTimer
from PyQt5.QtGui import QIcon
import sys
 
class Example(QWidget):
  def __init__(self):
    super().__init__()
    self.initUI() # 顯示窗體內容
  def initUI(self):
    self.pbar = QProgressBar(self)
    self.pbar.setGeometry(30,50,200,25) #設定進度條位置及大小
    self.btn = QPushButton('開始',self)
    self.btn.move(50,90)
    self.btn.clicked.connect(self.doAction) #點選按鈕時執行的動作函式指定為self.doAction()
    # self.btn.setGeometry(50,90,40,25)
 
    self.timer = QBasicTimer() #構建一個計數器
    self.step = 0 #設定基數
    self.setGeometry(300,300,280,170) # 設定整個窗體的大小
    self.setWindowTitle('進度條') #設定視窗標題
    # self.setWindowIcon('logo2.png') #設定視窗圖示
    self.show()
 
  def timerEvent(self,*args,**kwargs):
    if self.step >= 100:
      self.timer.stop()
      self.btn.setText('完成')
      return
    self.step += 1
    self.pbar.setValue(self.step) #timer每次重圍時將self.step 賦值給pbar
 
 
  def doAction(self):
    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) # 建立一個QT應用物件
  ex = Example()
  sys.exit(app.exec_())

結果

Python PyQt5模組實現視窗GUI介面程式碼例項

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。