调用头文件
#include “ctkErrorLogWidget.h”
.h文件 ctkErrorLogWidget *m_ErrorLogWidget; //错误日志窗口
.cpp文件 this->m_ErrorLogWidget = nullptr; /显示日志界面/ void MyMainWindow::on_m_ErrorLogPushButton_clicked() { /左、右下角工具栏/ if (this->m_ErrorLogWidget == nullptr) { this->m_ErrorLogWidget = new ctkErrorLogWidget;//日志窗口 }
this->InitErrorLogModel();
this->m_ErrorLogWidget->setErrorLogModel(this->m_ErrorLogModel.data());
//this->m_ErrorLogWidget->setWindowFlags(Qt::Window);
this->m_ErrorLogWidget->setWindowFlags(Qt::WindowStaysOnTopHint);//显示在顶端
this->m_ErrorLogWidget->setWindowModality(Qt::ApplicationModal);
this->m_ErrorLogWidget->show();
//this->ErrorLogToolButton->autoRaise();
}
void MyMainWindow::InitErrorLogModel() { // Instantiate ErrorLogModel this->m_ErrorLogModel = QSharedPointer(new ctkErrorLogModel); this->m_ErrorLogModel->setLogEntryGrouping(true); this->m_ErrorLogModel->setTerminalOutputs(ctkErrorLogTerminalOutput::All);//ctkErrorLogTerminalOutput::None this->m_ErrorLogModel->registerMsgHandler(new ctkErrorLogQtMessageHandler); this->m_ErrorLogModel->registerMsgHandler(new ctkErrorLogStreamMessageHandler); this->m_ErrorLogModel->registerMsgHandler(new ctkITKErrorLogMessageHandler); this->m_ErrorLogModel->registerMsgHandler(new ctkVTKErrorLogMessageHandler); this->m_ErrorLogModel->setAllMsgHandlerEnabled(true);
this->setupFileLogging();
// this->logApplicationInformation();
}
void MyMainWindow::setupFileLogging() { this->m_ErrorLogModel->setFileLoggingEnabled(true); // Add new log file path for the current session QString tempDir(“D:/log”); QString currentLogFilePath = tempDir + QString(“/”) + QDateTime::currentDateTime().toString(“yyyyMMdd_hhmmss”) + QString(“.log”); // Set current log file path this->m_ErrorLogModel->setFilePath(currentLogFilePath); }
|