QT小部件应用程序输出到控制台

Qt widget application output to console

本文关键字:控制台 输出 应用程序 小部 QT      更新时间:2023-10-16

我正在开发基于ubuntu中窗口小部件的GUI应用程序。我想将一些调试信息打印到使用printf的主机。在QT中调试应用程序时,是否可以显示控制台窗口?

当然。只需从终端(例如gdb myapp(中运行您的应用程序,或指示您的IDE(无论是什么(在终端中运行程序-QTCreator,Visual Studio和其他人都支持此。

是的,这很容易。由于您正在使用QT应用程序,因此我将使用QT调试模块;qdebug。要使控制台出现在GUI应用程序上,您需要在 *.pro文件中编辑配置参数,如下所示:

CONFIG += console

这将迫使任何QT应用程序也将控制台沿侧面产生,即使从桌面快捷方式开始。最后,我不使用printf(..(,而是使用qdebug((。它内置在QT中,并且使用简单。在文件中,您要使用qdebug,只需添加:

#include <QDebug>

当您想向控制台输出消息时,只需写入:

qDebug() << "This will output to the spawned console!";

或,

qDebug() << QString("This will output to the spawned console!");

最后,使用QDEBUG方法允许您提供类似下面的调试运营商的类:

class MyClass {
    public:
        MyClass(..);
        QDebug operator<< (QDebug d, const MyClass &myclass) {
            d << "This is what I want to output to the console!";
            return d;
        }

这将使您比使用fprint(..(制作更清洁的代码 在您的整个项目中,希望它有帮助!