如何将QMessageBox文本重定向到文本文件

时间:2012-11-20 13:11:26

标签: c++ qt

在我的项目中很多时候我都在使用QMessageBox。这是警告/信息。对于例如如果我正在进行一些验证,那么那时我正在使用一些QMessageBox :: information(...),或者如果我想限制用户不要移出特定页面,那么我正在使用QMessageBox :: critical(...)。 我知道“如何将qDebug输出重定向到文件”。我想对QMessagebox做同样的事情。这样我将在我的项目文件夹中维护一个文本文件。每当应用程序运行时,如果用户通过QMessagebox遇到某些消息,那么应该将其重定向到该文本文件。因此,关闭应用程序后,用户会有一小部分消息详细信息,无论他在运行应用程序时遇到过什么。

请帮我写这段代码..

提前谢谢。

1 个答案:

答案 0 :(得分:1)

您可以声明自己的静态信息,警告和关键函数,这些函数将显示原始QMessageBox并写入要记录的内容。

static StandardButton information(QWidget *parent, const QString &title, const QString &text, StandardButtons buttons = Ok, StandardButton defaultButton = NoButton);

StandardButton information(QWidget *parent, const QString &title, const QString &text, StandardButtons buttons, StandardButton defaultButton) 
{
   qDebug() << "writing to log";
   return QMessageBox::information (parent, title, text, buttons, defaultButton)
}