2.1 QProcess呼叫外部程式獲得實時輸出
阿新 • • 發佈:2019-02-12
在編寫qt程式的時候,我們難免需要呼叫其他程式,並且需要獲得程式的實時輸出,來繼續我們的程式,我們可以使用QProcess類提供的方法來達到我們的目的,我採用的方法如下所示:
void Widget::on_button_Ipcfg_clicked()
{
cardProcess = new QProcess(this);
connect(cardProcess, SIGNAL(readyReadStandardOutput()),this,
SLOT(readFromStdOut()));
cardProcess->start("/usr/local/bin/cardcfg" );
}
void Widget::readFromStdOut()
{
cardText = cardProcess->readAllStandardOutput();
QMessageBox::information(this,tr("Network card
information"),cardText ,tr("yes"));
}
通過上述方法我就可以將我的程式/usr/local/bin/cardcfg程式的輸出讀到cardText中,並通過informationbox彈框顯示。