ROSE的博客

为计算机学习者量身打造化

兼容widows和linux的设置console、工作台颜色(七种)

std::string WebServer::setFont(int n, std::string s)
{
#ifdef WIN32
CONSOLE_SCREEN_BUFFER_INFO csbi;
HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
GetConsoleScreenBufferInfo(hOut, &csbi);
if (n == 0)
{
SetConsoleTextAttribute(hOut, FOREGROUND_RED | FOREGROUND_INTENSITY);  //红色
papp_->logger().log("%s", s);
}
else if (n == 2)
{
SetConsoleTextAttribute(hOut, FOREGROUND_GREEN | FOREGROUND_INTENSITY); //绿色
papp_->logger().log("%s", s);
}
else if (n == 3)
{
SetConsoleTextAttribute(hOut, FOREGROUND_BLUE | FOREGROUND_INTENSITY);  //蓝色
papp_->logger().log("%s", s);
}
else if (n == 4)
{
SetConsoleTextAttribute(hOut, FOREGROUND_RED | FOREGROUND_BLUE | FOREGROUND_INTENSITY);  //紫色
papp_->logger().log("%s", s);
}
else if (n == 5)
{
SetConsoleTextAttribute(hOut, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY);  //黄色
papp_->logger().log("%s", s);
}
else if (n == 6)
{
SetConsoleTextAttribute(hOut, FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_INTENSITY);  //青色
papp_->logger().log("%s", s);
}
else if(n == 0)
{
SetConsoleTextAttribute(hOut, FOREGROUND_RED|FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_INTENSITY);  //白色
papp_->logger().log("%s", s);
}
SetConsoleTextAttribute(hOut, csbi.wAttributes);
#else
if (n == 1)
{
papp_->logger().log("\033[1;32m[%s]\033[0m", s);  //绿色
}
else if (n ==2)
{
papp_->logger().log("\033[1;33m[%s]\033[0m", s);   //黄色
}
else if (n == 3)
{ 
papp_->logger().log("\033[1;31m[%s]\033[0m", s);    //红色
}
else if (n == 4)
{
papp_->logger().log("\033[1;34m[%s]\033[0m", s);    //蓝色
}
else if (n == 5)
{
papp_->logger().log("\033[1;35m[%s]\033[0m", s);    //红色
}
else if (n ==6)
{
papp_->logger().log("\033[1;36m[%s]\033[0m", s);    //紫色
}
else if (n == 0)
{
papp_->logger().log("\033[1;37m[%s]\033[0m", s);    //白色
}
#endif
return s;
}

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_31558353/article/details/49926485
个人分类: c++函数 linux
上一篇linux 设置工作台字体颜色
下一篇行情数据处理为分钟数据(包含开盘价、最高价、最低价、收盘价)
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭