QT日志程序:
QT向textEdit写入日志。日志格式,当前系统时间日期+日志内容。其中,日志可以使用不同颜色显示,如下代码,可使用7种颜色,分为赤橙黄绿青蓝紫,使用switch...case实现。红色可表示警告,绿色表示安全,操作成功的消息,蓝色表示普通消息。
函数如下,
void basic_info::printfText(int color, QString str)
{
QTime time = QTime::currentTime();
QDateTime curData = QDateTime::currentDateTime();
QString strTime = curData.toString("yyyy-MM-dd");
strTime = strTime + " " + time.toString("hh:mm:ss");
QString msgIndexStr = strTime + ":";
//光标放在末尾
QTextCursor cursor = ui->textEdit->textCursor();
cursor.movePosition(QTextCursor::End);
ui->textEdit->setTextCursor(cursor);
QFont font = ui->textEdit->font();
font.setBold(true);
font.setPointSize(72);
font.setFamily("隶书");
ui->textEdit->setFont(font);
//时标颜色设置为黑色
ui->textEdit->setTextColor(Qt::black);
ui->textEdit->append(msgIndexStr);
switch(color)
{
case 0:
{//红色
ui->textEdit->setTextColor(Qt::red);
break;
}
case 1:
{//橙色
ui->textEdit->setTextColor(Qt::black);
break;
}
case 2:
{//黄色
ui->textEdit->setTextColor(Qt::yellow);
break;
}
case 3:
{//绿色
ui->textEdit->setTextColor(Qt::green);
break;
}
case 4:
{//青色
ui->textEdit->setTextColor(Qt::cyan);
break;
}
case 5:
{//蓝色
ui->textEdit->setTextColor(Qt::blue);
break;
}
case 6:
{//紫色
//ui->textEdit->setTextColor(Qt::violet);
break;
}
default:
{//蓝色
ui->textEdit->setTextColor(Qt::blue);
break;
}
}
ui->textEdit->insertPlainText(str);
}