Python QT ProgressBar

Lorsque vous utilisez le code suivant ma demande stands après quelques secondes.
Et par les étals je veux dire se bloque. J'obtiens une fenêtre de Windows disant d'attendre ou de la force de fermeture.

Je pourrais ajouter que cela n'arrive que lorsque je clique sur l'intérieur de la barre de progression fenêtre ou lorsque je clique sur l'extérieur de sorte qu'il perd le focus. Si je commence à l'exemple et ne touchez à rien, il fonctionne comme il le devrait.

from PyQt4 import QtCore
from PyQt4 import QtGui


class ProgressBar(QtGui.QWidget):
    def __init__(self, parent=None, total=20):
        super(ProgressBar, self).__init__(parent)
        self.name_line = QtGui.QLineEdit()

        self.progressbar = QtGui.QProgressBar()
        self.progressbar.setMinimum(1)
        self.progressbar.setMaximum(total)

        main_layout = QtGui.QGridLayout()
        main_layout.addWidget(self.progressbar, 0, 0)

        self.setLayout(main_layout)
        self.setWindowTitle("Progress")

    def update_progressbar(self, val):
        self.progressbar.setValue(val)   

L'utilisation de ce comme suit:

app = QtGui.QApplication(sys.argv)
bar = ProgressBar(total=101)
bar.show()

for i in range(2,100):
    bar.update_progressbar(i)
    time.sleep(1)

Merci pour toute aide.

OriginalL'auteur Tuim | 2012-11-07