2012-03-28 4 views
2

콘솔 응용 프로그램에서 오류 텍스트를 표시하지 않습니다. Qt 데이터베이스 드라이버에서 SQL 오류가 발생하면 오류가 자동으로 인쇄됩니다. 내가하고 싶은 일은 기술적 오류없이 사용자 친화적 인 메시지를 표시하는 것입니다. 나는이 문제를 해결하는 데 거의 도움이되지 못했습니다.Qt 데이터베이스 오류가 표시되지 않습니다.

+0

당신이 직접 Qt는에 의해 해결 될 때까지 정말 가장 가까운 것은 그대로 받아 들여지는 Qt의 사이트 –

답변

1

qInstallMsgHandler()과 함께 사용자 지정 메시지 처리기를 설치할 수 있지만 응용 프로그램의 경우입니다. 그게 당신에게 충분한 통제를 줄 것인가 아닌지 확신 할 수 없습니다.

예 :이 들어

#include <QtCore> 

void myMessageOutput(QtMsgType type, const char *msg) { 
    switch (type) { 
    case QtDebugMsg: 
    case QtCriticalMsg: 
     fprintf(stderr, "%s\n", msg); 
     break; 
    case QtWarningMsg: 
     fprintf(stderr, "A kinder, gentler, warning message.\n", msg); 
     break; 
    case QtFatalMsg: 
     fprintf(stderr, "%s\n", msg); 
     abort(); 
    } 
} 

int main(int argc, char **argv) { 
    qInstallMsgHandler(myMessageOutput); 
    QCoreApplication app(argc, argv); 
    qDebug("A debug message"); 
    qCritical("A critical message"); 
    qWarning("REALLY TECHNICAL WARNING THAT SCARES SMALL CHILDREN"); 
    qFatal("A fatal message"); 
    return app.exec(); 
} 
+0

에 버그보고를해야합니다 . – JadziaMD

관련 문제