2012-05-18 69 views

回答

1

我結束了使用此:

# Create runner 
    self.runner = QProcess(self) 
    # Make sure newInfo gets all output 
    self.runner.readyReadStandardError.connect(self.newErrInfo) 
    # Run the command 
    self.runner.start(command) 
    # Once it's started set message to Converting 
    self.parentWidget().statusBar().showMessage("Converting.") 

然後在類更高版本:

def newErrInfo(self): 
    newString = str(self.runner.readAllStandardError()) 
    print(newString, end=" ") 

readAllStandardOutput()也適用於標準輸出

1
QProcess qp; 
qp.start("Yourcode"); 
qp.waitForFinished(); 
qDebug() << "qp:" << qp.readAll(); 

對於閱讀過,您可以使用功能,如canReadLine()readyread()waitforreadyread()waitforbyteswritten()

signal-slot機制中使用這些函數來實時捕獲數據。

+0

不,不是命令後結束運行。我的意思是指令正在運行。 – polandeer

+0

我已經更新了我的答案。檢查出來 – ScarCode

+0

謝謝。不過,我想我已經找到了另一個答案。 – polandeer

相關問題