이 페이지에서

QErrorMessage Class

QErrorMessage 클래스는 오류 메시지 표시 대화 상자를 제공합니다. 더 보기...

헤더: #include <QErrorMessage>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
상속: QDialog

공개 함수

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

공개 슬롯

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

정적 공용 멤버

QErrorMessage *qtHandler()

재구현된 보호 함수

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

상세 설명

오류 메시지 위젯은 텍스트 레이블과 체크박스로 구성됩니다. 체크박스를 통해 사용자는 향후 동일한 오류 메시지가 다시 표시될지 여부를 제어할 수 있으며, 일반적으로 "이 메시지를 다시 표시"라는 텍스트가 해당 지역 언어로 번역되어 표시됩니다.

실전 애플리케이션의 경우, 이 클래스를 사용하여 사용자가 한 번만 확인하면 되는 메시지를 표시할 수 있습니다. QErrorMessage를 이러한 방식으로 사용하려면 일반적인 방법으로 대화 상자를 생성한 다음, showMessage() 슬롯을 호출하거나 신호를 연결하여 표시하면 됩니다.

정적 함수 ` qtHandler()`는 ` qInstallMessageHandler()`를 사용하여 메시지 핸들러를 설치하고, ` qDebug()`, ` qWarning()`, ` qFatal()` 메시지를 표시하는 `QErrorMessage`를 생성합니다. 이는 경고 및 오류 메시지를 표시할 콘솔이 없는 환경에서 가장 유용합니다.

두 경우 모두 QErrorMessage는 대기 중인 메시지를 대기열에 넣고 순서대로 표시하며, 사용자가 이전 메시지를 수락하는 즉시 새로운 메시지가 표시됩니다. 사용자가 특정 메시지를 다시 표시하지 않도록 지정하면 해당 메시지는 자동으로 건너뛰어지고, 대화 상자에는 대기열에 있는 다음 적절한 메시지가 표시됩니다.

'표준 대화 상자(Standard Dialogs )' 예제에서는 QErrorMessage와 기타 내장된 Qt 대화 상자를 사용하는 방법을 보여줍니다.

네트워크 관련 오류 메시지가 표시되는 대화 상자

QMessageBox, QStatusBar::showMessage() 및 ‘표준 대화 상자 예제’도 참조하십시오 .

멤버 함수 문서

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

지정된 parent 를 사용하여 오류 처리기 창을 생성하고 표시합니다.

대화 상자의 기본 window modality 는 플랫폼에 따라 다릅니다. showMessage()를 호출하기 전에 setWindowModality()을 통해 창의 모달리티를 재정의할 수 있습니다.

[virtual noexcept] QErrorMessage::~QErrorMessage()

오류 메시지 대화 상자를 닫습니다.

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

QWidget::changeEvent(QEvent *event)를 재구현합니다.

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

QDialog::done(int r)을 재구현합니다.

[static] QErrorMessage *QErrorMessage::qtHandler()

기본 Qt 메시지를 출력하는 QErrorMessage 객체에 대한 포인터를 반환합니다. 이 함수는 해당 객체가 아직 존재하지 않을 경우, 해당 객체를 생성합니다.

이 객체는 QLoggingCategory::defaultCategory()의 로그 메시지만 출력합니다.

이 객체는 모든 메시지를 원래의 메시지 핸들러로 전달합니다.

qInstallMessageHandler도 참조하십시오 .

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

지정된 메시지( message)를 표시한 후 즉시 반환합니다. 사용자가 해당 메시지를 다시 표시하지 않도록 요청한 경우, 이 함수는 아무 작업도 수행하지 않습니다.

일반적으로 메시지는 즉시 표시됩니다. 그러나 대기 중인 메시지가 있는 경우, 나중에 표시되도록 대기열에 추가됩니다.

참고: 이 슬롯은 오버로드되어 있습니다. 이 슬롯에 연결하려면:

// Connect using qOverload:
connect(sender, &SenderClass::signal,
        errorMessage, qOverload(&QErrorMessage::showMessage));

// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
        errorMessage, [receiver = errorMessage](const QString &message) { receiver->showMessage(message); });
더 많은 예제와 방법에 대해서는 오버로드된 슬롯에 연결하기를 참조하십시오.

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

지정된 메시지 message 를 표시하고 즉시 반환합니다. 사용자가 type 유형의 메시지를 다시 표시하지 않도록 요청한 경우, 이 함수는 아무 작업도 수행하지 않습니다.

일반적으로 메시지는 즉시 표시됩니다. 그러나 대기 중인 메시지가 있는 경우, 나중에 표시되도록 대기열에 추가됩니다.

참고: 이 슬롯은 오버로드되어 있습니다. 이 슬롯에 연결하려면:

// Connect using qOverload:
connect(sender, &SenderClass::signal,
        errorMessage, qOverload(&QErrorMessage::showMessage));

// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
        errorMessage, [receiver = errorMessage](const QString &message, const QString &type) { receiver->showMessage(message, type); });
더 많은 예제와 접근 방법은 오버로드된 슬롯에 연결하기를 참조하십시오.

showMessage()도 참조하십시오 .

© 2026 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.