Qtリファレンス QtGlobal::qInstallMessageHandler 新しいページはコチラ
提供: yonewiki
(ページの作成:「Qtリファレンスへ戻る == '''QtGloba::qInstallMessageHandler 概要''' == Qt5.15.2 デバッグメッセージ、警告、重大...」) |
(→QtGlobal::qInstallMessageHandler 概要) |
||
1行: | 1行: | ||
[[Qt#Qtリファレンス|Qtリファレンス]]へ戻る | [[Qt#Qtリファレンス|Qtリファレンス]]へ戻る | ||
− | == ''' | + | == '''QtGlobal::qInstallMessageHandler 概要''' == |
Qt5.15.2 | Qt5.15.2 | ||
− | デバッグメッセージ、警告、重大なメッセージ、致命的なエラーを出力するときの設定をします。アプリケーション単位で一つの設定ができます。引数のQtMessageHandler型の関数ポインタ(ハンドラ) | + | デバッグメッセージ、警告、重大なメッセージ、致命的なエラーを出力するときの設定をします。アプリケーション単位で一つの設定ができます。引数のQtMessageHandler型の関数ポインタ(ハンドラ)で表示設定関数を受け渡すことによって出力書式を変更できます。 |
13行: | 13行: | ||
− | + | このときappMessageHandlerは以下のような関数のポインタとなっています。このとき、appMessageHandler関数は以下のような構造を設定することでしょう。出力内容やQString&型のmsgの処理方法とかは、自由に設定します。 | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
+ | <syntaxhighlight2 lang="cpp"> | ||
+ | void appMessageHandler(QtMsgType qmsgtype, const QMessageLogContext& context, const QString &msg){ | ||
+ | QByteArray qbytearrayMsg = msg.toLocal8bit; | ||
+ | switch(qmsgtype){ | ||
+ | case QtDebugMsg: | ||
+ | fprintf( stderr, "Debug: %s (%s:%u, %s)\n", qbytearrayMsg.constData(), context.file(), context.line(), context.function() ); | ||
+ | break; | ||
+ | case QtInfoMsg:… | ||
+ | case QtWarningMsg:… | ||
+ | case QtCriticalMsg:… | ||
+ | case QtFatalMsg:… | ||
+ | } | ||
+ | } | ||
+ | </syntaxhighlight2> | ||
[[Qt#Qtリファレンス|Qtリファレンス]]へ戻る | [[Qt#Qtリファレンス|Qtリファレンス]]へ戻る |