私はPysideでウィザードを作成しました。 1ページに、新しいスレッドを作成してインストーラを起動します。 インストーラが準備完了したら、ウィザードは次のボタンをクリックせずに自動的に前進する必要があります。pysideの次のスロットQWizardを使用
私はpysideのドキュメントを読みましたが、私の理解は、QWizardに次の機能があることです。しかし、どうやってこの機能を使うことができますか?
from PySide.QtGui import *
from PySide.QtCore import *
...
...
class Install(QWizardPage):
def __init__(self, parent=None):
super(Install, self).__init__(parent)
def initializePage(self):
self.setTitle("Install")
label = QLabel("Install")
label.setWordWrap(True)
layout = QVBoxLayout()
self.progressBar = QProgressBar(self)
self.progressBar.setRange(0,1)
self.progressBar.setRange(0,0)
layout.addWidget(self.progressBar)
layout.addWidget(label)
self.setLayout(layout)
self.myTask = TaskThread()
self.myTask.start()
self.myTask.taskFinished.connect(self.Finished)
def Finished(self):
print("finish")
def isComplete(self):
return False
class TaskThread(QThread):
taskFinished = Signal()
def run(self):
a = 0
while a != 10000:
print("test")
a += 1
self.taskFinished.emit()
をそして、私は次の機能を使用しようとすると、私は試してみてください:
私のテストが正常に動作しても
self.CallNext = QWizard().next
self.myTask.taskFinished.connect(self.CallNext)
そして:
self.myTask.taskFinished.connect(QWizard().next)
をしかし、これではありません作業
あなたは何をすべきか'QWizard()。next'と思う?それは本当にあなたが欲しいものですか? – Trilarion