1
注意:類mywindow的(QWidget中):Pyside QProcess中需要幫助
在初始化
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的輸出並通過不等待進程完成而在TextEdit中顯示它們? (該方式的cmd.exe或端子短做,他們顯示輸出作爲程序運行)
感謝
- 馬克