QProgressBarを機能にどのように接続しますか? [閉まっている
-
26-10-2019 - |
質問
私はプログラムに取り組んでおり、Qprogressbarを関数に接続したいと思います。関数が進行中である間、qprogressbarは関数が完了するまでカウントする必要があります。その後、qprogressbarも実行する必要があります。
解決
このサンプルは、進捗状況を見るという簡単なアイデアを提供します。これは効率的またはエレガントではありません。それは私が装備した単なる実用的なソリューションです。
#!/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_() )
所属していません StackOverflow