QErrorMessage 类

QErrorMessage 类提供了一个错误信息显示对话框。 更多...

头文件 #include <QErrorMessage>
CMakefind_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmakeQT += widgets
继承 QDialog

公共函数

QErrorMessage(QWidget *parent = nullptr)
virtual~QErrorMessage()

公共槽

voidshowMessage(const QString &message)
voidshowMessage(const QString &message, const QString &type)

静态公共成员

QErrorMessage *qtHandler()

重实现受保护函数

virtual voidchangeEvent(QEvent *e) override
virtual voiddone(int a) override

详细描述

错误信息小部件由一个文本标签和一个复选框组成。复选框允许用户控制是否在将来再次显示相同的错误信息,通常显示的文字是“再次显示此消息”翻译成适当的本地语言。

对于生产环境的应用程序,该类可以用来显示用户只需看一次的信息。要像这样使用 QErrorMessage,您以常规方式创建对话框,并通过调用 showMessage() 槽或连接信号来显示它。

静态 qtHandler() 函数使用 qInstallMessageHandler() 安装一个消息处理器,并创建一个显示 qDebug()、qWarning() 和 qFatal() 消息的 QErrorMessage。这在没有控制台可用来显示警告和错误信息的环境中非常有用。

在两种情况下,QErrorMessage 都会排队等待消息,并按顺序显示它们,新消息会在用户接受上一个消息后立即显示。一旦用户指定不再显示消息,它将自动跳过,对话框将显示队列中的下一个适当的消息。

标准对话框 示例展示了如何使用 QErrorMessage 以及其他内置的 Qt 对话框。

另请参阅 QMessageBoxQStatusBar::showMessage 以及 标准对话框示例

成员函数文档

[显式] QErrorMessage::QErrorMessage(QWidget *parent = nullptr)

创建并安装一个带有指定的错误处理窗口。

对话框的默认窗口模式取决于平台。在调用showMessage之前,可以通过setWindowModality()来覆盖窗口模式。

[虚函数 noexcept] QErrorMessage::~QErrorMessage()

销毁错误消息对话框。

[重载保护虚函数] void QErrorMessage::changeEvent(QEvent *e)

重写了:QWidget::changeEvent(QEvent *event).

[重载保护虚函数] void QErrorMessage::done(int a)

重写了:QDialog::done(int r).

[静态] QErrorMessage *QErrorMessage::qtHandler()

返回一个指向QErrorMessage对象的指针,该对象输出默认Qt消息。如果还不存在此类对象,此函数将创建它。

该对象仅输出QLoggingCategory::defaultCategory的日志消息。

该对象将向原始消息处理器发送所有消息。

参见qInstallMessageHandler.

[槽函数] void QErrorMessage::showMessage(const QString &message)

显示给定的消息message并立即返回。如果用户请求不再显示消息,则此函数不执行任何操作。

通常,消息立即显示。但是,如果有挂起的消息,它将被排队以稍后显示。

[槽函数] void QErrorMessage::showMessage(const QString &message, const QString &type)

这是一个重载函数。

显示给定的消息message并立即返回。如果用户请求不再显示类型type的消息,则此函数不执行任何操作。

通常,消息立即显示。但是,如果有挂起的消息,它将被排队以稍后显示。

参见showMessage.

© 2024 Qt公司有限公司。本文件中包含的文档贡献是各自所有者的版权。本文件提供的文档是根据自由软件基金会发布的GNU自由文档许可证版本1.3的条款许可的。Qt及相关标志是芬兰及其它国家的Qt公司有限公司的商标。所有其他商标均为各自所有者的财产。