QErrorMessage Class

Die Klasse QErrorMessage bietet einen Dialog zur Anzeige von Fehlermeldungen. Mehr...

Kopfzeile: #include <QErrorMessage>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Vererbt: QDialog

Öffentliche Funktionen

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

Öffentliche Slots

void showMessage(const QString &message)
void showMessage(const QString &message, const QString &type)

Statische öffentliche Mitglieder

QErrorMessage *qtHandler()

Reimplementierte geschützte Funktionen

virtual void changeEvent(QEvent *e) override
virtual void done(int a) override

Detaillierte Beschreibung

Ein Fehlermeldungs-Widget besteht aus einer Textbeschriftung und einem Kontrollkästchen. Mit dem Kontrollkästchen kann der Benutzer steuern, ob dieselbe Fehlermeldung in Zukunft erneut angezeigt werden soll, wobei typischerweise der Text "Diese Meldung erneut anzeigen" in der entsprechenden Landessprache angezeigt wird.

Für Produktionsanwendungen kann die Klasse verwendet werden, um Meldungen anzuzeigen, die der Benutzer nur einmal sehen muss. Um QErrorMessage auf diese Weise zu verwenden, erstellen Sie den Dialog auf die übliche Weise und zeigen ihn an, indem Sie den showMessage()-Slot aufrufen oder Signale mit ihm verbinden.

Die statische Funktion qtHandler() installiert einen Message-Handler unter Verwendung von qInstallMessageHandler() und erstellt eine QErrorMessage, die die Meldungen qDebug(), qWarning() und qFatal() anzeigt. Dies ist vor allem in Umgebungen nützlich, in denen keine Konsole zur Anzeige von Warnungen und Fehlermeldungen verfügbar ist.

In beiden Fällen stellt QErrorMessage anstehende Meldungen in eine Warteschlange und zeigt sie der Reihe nach an, wobei jede neue Meldung angezeigt wird, sobald der Benutzer die vorherige Meldung akzeptiert hat. Sobald der Benutzer angegeben hat, dass eine Meldung nicht mehr angezeigt werden soll, wird sie automatisch übersprungen, und der Dialog zeigt die nächste passende Meldung in der Warteschlange an.

Das Beispiel Standarddialoge zeigt, wie man QErrorMessage und andere eingebaute Qt-Dialoge verwendet.

Siehe auch QMessageBox, QStatusBar::showMessage(), und Standarddialoge Beispiel.

Dokumentation der Mitgliedsfunktionen

[explicit] QErrorMessage::QErrorMessage(QWidget *parent = nullptr)

Konstruiert und installiert ein Fehlerbehandlungsfenster mit der angegebenen parent.

Die Voreinstellung window modality des Dialogs hängt von der Plattform ab. Die Fenstermodalität kann über setWindowModality() vor dem Aufruf von showMessage() überschrieben werden.

[virtual noexcept] QErrorMessage::~QErrorMessage()

Löscht den Fehlermeldungsdialog.

[override virtual protected] void QErrorMessage::changeEvent(QEvent *e)

Reimplements: QWidget::changeEvent(QEvent *Event).

[override virtual protected] void QErrorMessage::done(int a)

Reimplements: QDialog::done(int r).

[static] QErrorMessage *QErrorMessage::qtHandler()

Gibt einen Zeiger auf ein QErrorMessage Objekt zurück, das die Standard Qt Nachrichten ausgibt. Diese Funktion erzeugt ein solches Objekt, falls es noch nicht vorhanden ist.

Das Objekt gibt nur Logmeldungen von QLoggingCategory::defaultCategory() aus.

Das Objekt leitet alle Meldungen an den ursprünglichen Message-Handler weiter.

Siehe auch qInstallMessageHandler.

[slot] void QErrorMessage::showMessage(const QString &message)

Zeigt die angegebene Nachricht an, message, und kehrt sofort zurück. Wenn der Benutzer angefordert hat, dass die Nachricht nicht mehr angezeigt werden soll, tut diese Funktion nichts.

Normalerweise wird die Nachricht sofort angezeigt. Wenn jedoch noch andere Nachrichten anstehen, wird sie in eine Warteschlange gestellt, um später angezeigt zu werden.

[slot] void QErrorMessage::showMessage(const QString &message, const QString &type)

Dies ist eine überladene Funktion.

Zeigt die angegebene Nachricht, message, und kehrt sofort zurück. Wenn der Benutzer angefordert hat, dass Nachrichten des Typs type nicht mehr angezeigt werden sollen, tut diese Funktion nichts.

Normalerweise wird die Nachricht sofort angezeigt. Wenn jedoch noch andere Nachrichten anstehen, wird sie in eine Warteschlange gestellt, um später angezeigt zu werden.

Siehe auch showMessage().

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.