使用 Python 3.1 和 PyQt,我试图让 QProgressBar 通过让条在小部件上滑动来显示任务正在运行。我发现可以通过将最小值和最大值设置为 0 来完成。
我让它正常工作,但是当它集成到我的程序中时,条形图只会显示在小部件的前 25% 中,然后重置回开始。我玩了好几个小时,我想我已经把它缩小到一个文档字符串。代码在底部。
如果我第一次运行代码,进度条可以正常工作。但是,在那之后的任何时候它都不起作用。如果我删除 .pyc 文件,那么它只会在第一次再次工作。
当我删除 def testfunction 文档字符串第二行的最后一个字符“j”或删除整个文档字符串时,它总是有效的。每次。
有什么愚蠢的我想念的吗?我不想为了能够正确运行代码而更改我的文档字符串。
主文件
import sys
from PyQt4 import QtGui
from mainUI import Ui_Form
import comment
class mainForm(QtGui.QDialog):
def __init__( self, parent=None ):
QtGui.QWidget.__init__( self, parent )
self.ui = Ui_Form()
self.ui.setupUi( self )
if __name__ == "__main__":
app = QtGui.QApplication( sys.argv )
myapp = mainForm()
myapp.show()
sys.exit( app.exec_() )
主界面.py
class comment():
def testfunction( self ):
"""
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghij
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijabcdefghij
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopq
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcde
abcdefghijklmnopqrstuvwxyzabcdefghij
"""
pass
from PyQt4 import QtCore, QtGui
_fromUtf8 = lambda s: s
class Ui_Form(object):
def setupUi(self, Form):
Form.resize(206, 100)
self.pgbTotalProgress = QtGui.QProgressBar(Form)
self.pgbTotalProgress.setGeometry(QtCore.QRect(20, 30, 191, 23))
self.pgbTotalProgress.setMaximum(0)
self.pgbTotalProgress.setProperty(_fromUtf8("value"), 0)
self.pgbTotalProgress.setObjectName(_fromUtf8("pgbTotalProgress"))