注:クラスMyWindow(QWidget):
初期化中
self.proc = QtCore.QProcess(self)
self.te = QTextEdit(self)
self.btn = QPushButton("Execute", self)
self.btn.clicked.connect(self.__event_btn)
今私はこれを持っています:
def __event_btn(self):
w_dir = "" # This set to my working directory where my C files are
args = ["-o", "MyFile", "MyFile.c"]
cmd = "gcc"
self.proc.setWorkingDirectory(dir)
self.proc.readyReadStandardOutput.connect(self.__read)
self.proc.closeWriteChannel()
self.proc.setReadChannel(QtCore.QProcess.StanfardOutput())
self.proc.start(cmd, args)
def __read(self):
self.te.setText(self.proc.readAllStandardOutput)
上記のコードは、プロセスの実行が完了するまで何も表示しません。
さて、私の質問は、プロセスが終了するのを待たずに、gccからの出力をキャプチャして、テキストエディットに表示する方法はありますか?(cmd.exeまたはteminalの方法。プログラムの実行時に出力が表示されます)
ありがとう
- マーク