1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
   | #!/usr/bin/python
# -*- coding: utf-8 -*-
# Python 3.4
 
import os, sys, time
from PyQt5 import (QtWidgets, QtGui, QtCore)
 
 
class Feuille( QtWidgets.QWidget) :
    def __init__(self, parent = None) :
        super().__init__( parent)
        self.setObjectName("Feuille")
        self.parent = parent
 
        self.bouton = QtWidgets.QPushButton("Lancer")
        self.bouton.setObjectName("Feuille bouton")
        self.bouton.clicked.connect(self.lancer)
 
        #progress bar
        self.progressBar = QtWidgets.QProgressBar()
        self.progressBar.setObjectName("Feuille progressBar")
 
        self.layout = QtWidgets.QVBoxLayout()
        self.layout.setObjectName("Feuille layout")
        self.layout.addWidget(self.bouton)
        self.setLayout(self.layout)
 
    def lancer(self):
        self.layout.addWidget(self.progressBar)
        self.progressBar.setTextVisible(False)
        self.progressBar.setMinimum(0)
        self.progressBar.setMaximum(0)
        self.progressBar.show()
 
        # partie modifiée
        #time.sleep(5)    # pause 5 seconds
        t = 0.0
        while t<5.0:
            t += 0.1
            time.sleep(0.1)
            QtCore.QCoreApplication.processEvents() # <= redonner la main au graphique pour mise à jour
        self.progressBar.hide()
 
if __name__ == "__main__":
    app =  QtWidgets.QApplication (sys.argv)
    fp = Feuille()
    fp.show()
    sys.exit(app.exec_()) | 
Partager