调用头文件
#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);
}