zoukankan      html  css  js  c++  java
  • Qt之输出控制

    简述

    在Qt项目开发过程中,往往需要对程序的一些信息进行控制,比如:打印日志、调试信息等,便于我们后期查找、跟踪及定位问题。

    下面,我们来分享下常用的几种方式。

    示例代码

    我们简单地写一些测试代码,用qDebug输出一些基本信息。

    #include <QApplication>
    #include <QWidget>
    #include <qDebug>
    
    int main(int argc, char *argv[])
    {
        QApplication app(argc, argv);
    
        qDebug() << QString::fromLocal8Bit("一去丶二三里");
        qDebug() << QString::fromLocal8Bit("青春不老,奋斗不止!");
        qDebug() << QString::fromLocal8Bit("纯正开源之美,有趣、好玩、靠谱。。。");
    
        QWidget w;
        w.show();
    
        return app.exec();
    }
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    应用程序输出

    大部分情况下,我们建立的是【Qt Widgets Application】(用于GUI开发)项目,其输出信息在【应用程序输出】窗口。

    这里写图片描述

    这对于开发人员来说调试比较方便,但是,当你把整个程序打包出去的时候(比如:给测试人员或者其他人员),他们根本无法获取这些信息(不方便),所以我们可以采用下面两种方式。

    控制台输出

    对于【Qt Widgets Application】来说,我们也可以像【Qt Console Application】(新建项目时可以选择)一样,进行控制台输出,只不过需要自行控制:

    1. 在.pro文件中添加:

      CONFIG += console
      • 1
      • 1
    2. 选择:项目 -> 运行,勾选【Run in terminal】(在终端运行)选项。

    这里写图片描述

    这时,我们的输出信息就可以显示在控制台上了。

    这里写图片描述

    重定向至文件

    主要采用自定义消息处理机制,重定向输出信息至文件。

    其中输出格式可以自定义,比如:输出信息、文件、函数、行号、日期时间。这样就很利于我们追踪了。

    详细内容请参考:Qt之qInstallMessageHandler(重定向至文件)

  • 相关阅读:
    vi命令大全
    理解proc文件系统
    读目录
    取得系统资源信息
    qtempinc
    我实现的一个正则表达式代码
    oracle内置函数大全
    STL算法
    unix基础教程
    两日期间的天数
  • 原文地址:https://www.cnblogs.com/lidabo/p/6495800.html
Copyright © 2011-2022 走看看