主要工作是在主函數所在的main.cpp文件中定義一個新方法,用於轉發調試信息,函數如下:
[cpp]
void myMessageOutput(QtMsgType type, const char* msg) {
std::fprintf(stdout, "%s\n", msg);
std::fflush(stdout);
}
然後就是在主函數中調用qInstallMsgHandler注冊處理器,代碼如下:
[cpp] www.2cto.com
qInstallMsgHandler(myMessageOutput);
這樣這個程序的所有qt調試信息就會輸出到控制台上了,使用起來很是方便,下面是完整代碼:
[cpp]
#include <bb/cascades/Application>
#include <QLocale>
#include <QTranslator>
#include <QTextCodec>
#include <iostream>
using namespace bb::cascades;
void myMessageOutput(QtMsgType type, const char* msg) {
std::fprintf(stdout, "%s\n", msg);
std::fflush(stdout);
}
int main(int argc, char **argv) {
// this is where the server is started etc
Application app(argc, argv);
qInstallMsgHandler(myMessageOutput);
new Demo(&app);
return Application::exec();
}