Comment pouvez-vous vous connectez un QProgressBar avec une fonction? [fermé]
-
26-10-2019 - |
Question
Je travaille sur un programme et je veux connecter un QProgressBar avec une fonction. Bien que la fonction est en cours, le QProgressBar devrait compter jusqu'à ce que la fonction se fait. Ensuite, la QProgressBar doit être fait aussi.
La solution
Cet exemple vous donnera une idée simple de voir les progrès. En aucune façon que ce soit efficace ou élégant. Son juste une solution de travail i bricolé.
#!/usr/bin/python
import os, sys
from time import sleep
from PyQt4.QtCore import *
from PyQt4.QtGui import *
app = QApplication( sys.argv )
def copyFile() :
cpBtn.setDisabled( True )
for i in range( 0, 100 ) :
# File Copy Code
# sleep( 0.1 ) is instead of the file copy code
sleep( 0.1 )
pb.setValue( i + 1 )
qApp.processEvents()
cpBtn.setEnabled( True )
pb.reset()
fcpDlg = QDialog()
cpBtn = QPushButton( fcpDlg )
cpBtn.setText( "&Copy" )
cpBtn.clicked.connect( copyFile )
cpBtn.setFixedWidth( 72 )
pb = QProgressBar()
pb.setMinimumWidth( 300 )
pb.setRange( 0, 100 )
lyt = QVBoxLayout( fcpDlg )
lyt.addWidget( pb )
lyt.addWidget( cpBtn )
fcpDlg.setLayout( lyt )
fcpDlg.show()
sys.exit( app.exec_() )
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow