xiamai
xiamai
2014-05-19 01:03

QT中调用外部程序,输出显示的问题

  • 显示
  • qt
  • scrollarea

Linux下QT调用外部程序F,F运行的时间比较长,在运行过程中不断有输出,用scrollarea+label(或者什么textedit)来显示程序F的输出,用的是readAll(),程序运行过程中的输出可以看到,但是当F程序运行完毕的时候,只有最后一小部分的输出能够在区域里看到.滚动条都没有或者滚动条的区域很小,前面一部分的输出根本看不到了。。
求教。。

部分代码:
out=new QTextEdit();
ui->scrollArea->setWidget(out);
out->setReadOnly(true);
ui->scrollArea->setWidgetResizable(true);

部分代码:
QProcess *proc=new QProcess(this);

connect(proc,SIGNAL(readyRead()),this,SLOT(on_read()));

proc->start("F",param);

部分代码:
void MainWindow:: on_read()
{
QProcess *proc=(QProcess *)sender();
QString result=proc->readAll();
out->setText(result);
}

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

0条回答