C++更改输出控制台颜色
来源:互联网 发布:nba2kol软件 编辑:程序博客网 时间:2024/04/29 16:22
// ConsoleColor.h
#pragma once
#include <iostream>
#include <windows.h>
inline std::ostream& blue(std::ostream &s)
{
HANDLE hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hStdout, FOREGROUND_BLUE
|FOREGROUND_GREEN|FOREGROUND_INTENSITY);
return s;
}
inline std::ostream& red(std::ostream &s)
{
HANDLE hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hStdout,
FOREGROUND_RED|FOREGROUND_INTENSITY);
return s;
}
inline std::ostream& green(std::ostream &s)
{
HANDLE hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hStdout,
FOREGROUND_GREEN|FOREGROUND_INTENSITY);
return s;
}
inline std::ostream& yellow(std::ostream &s)
{
HANDLE hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hStdout,
FOREGROUND_GREEN|FOREGROUND_RED|FOREGROUND_INTENSITY);
return s;
}
inline std::ostream& white(std::ostream &s)
{
HANDLE hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hStdout,
FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);
return s;
}
struct color {
color(WORD attribute):m_color(attribute){};
WORD m_color;
};
template <class _Elem, class _Traits>
std::basic_ostream<_Elem,_Traits>&
operator<<(std::basic_ostream<_Elem,_Traits>& i, color& c)
{
HANDLE hStdout=GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hStdout,c.m_color);
return i;
}
====================Demo Code=============================================
#include "ConsoleColor.h"
std::cout << green << "This text is written in green"
<< white << std::endl;
std::cout << color(FOREGROUND_RED|FOREGROUND_GREEN)
<< "This text has a really exiting color !"
<< white << std::endl;
- C++更改输出控制台颜色
- Windows下更改C/C++控制台程序文本输出颜色
- c控制台输出颜色变化
- linux c 改变控制台输出字体颜色
- C/C++控制台带颜色功能输出
- C/C++控制台带颜色功能输出
- C语言改变控制台输出内容颜色
- C语言实现控制台输出背景颜色字体颜色变化
- 改变控制台输出颜色
- 格式化控制台输出颜色
- python控制台输出颜色
- C/C++控制台输出时设置字体及背景颜色
- C/C++控制台输出时设置字体及背景颜色
- C/C++控制台输出时设置字体及背景颜色
- C/C++控制台输出时设置字体及背景颜色
- C/C++控制台输出时设置字体及背景颜色
- c 设置 控制台 颜色
- 改变控制台的输出颜色
- (METALINK)利用FORM个性化增加web link
- visual studio 2010 建立 OpenCV 2.4 环境
- Asp.net 用UpdateProgress加载数据显示进度条
- Cocos2d-x VS 工程创建问题
- Oracle时间比较,计算 得到月,日,年
- C++更改输出控制台颜色
- 【SQL分享】求字符串中汉字的个数【经典】
- 几组特殊(内网等)ip详解
- openoffice获取当前文档的段落和表格总数
- SQLite GUI开发工具
- 现实迷途 第三十章 若即若离
- Editplus使用正则替换
- 黑马程序员_Java反射机制
- 理解项目编辑器---part2:编辑事件