在 Qt 4.7 中将标准输出管道传输到 QLabel
Posted
技术标签:
【中文标题】在 Qt 4.7 中将标准输出管道传输到 QLabel【英文标题】:piping standard output into QLabel in Qt 4.7 【发布时间】:2011-01-17 07:16:22 【问题描述】:我正在尝试将大学 C++ 代码包装在 Qt 小部件中。
但是,他的程序标准输出必然需要查看。到目前为止,我假设我将构建一个 GUI 并打开一个 QProccess 来运行他的程序(然后通过该管道发送命令)。
所以我的问题是无论如何要读取该程序的标准输出并将其显示在 qlabel 或类似的东西中(即我应该研究哪些函数)?
【问题讨论】:
【参考方案1】:当进程运行时,只要标准输出上有可用数据,QProcess
对象就会发出readyReadStandardOutput()
信号。您可以订阅信号,从连接的插槽调用 readAllStandardOutput()
并将数据附加(而不是替换)到您的小部件。如果您不需要在数据到达后立即显示,您可以等到该过程完成,然后一次性读取所有输出。
【讨论】:
完美的声音正是我所需要的!以上是关于在 Qt 4.7 中将标准输出管道传输到 QLabel的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Python 将标准输入/标准输出通过管道传输到 Perl 脚本