C++中输出框字体颜色的代码设置(xk)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C++ 中输出框字体颜色的代码设置 (xk)
C++
控制台程序运行时输出框默认的文字颜色是白色,所以我常称其输出框为黑白框。
但是这个文字样式不是固定不变的,是可以改变颜色的字体的。
方法有两种:
一、设置输出框的框体属性。
在运行时弹出的输出框标题栏上点击右键设置它的属性,可以调节输出框的大小、背景色、文字颜色等属性。
但是这种设置只能在自己的机子上运行显示。
在其他人的机子上是没有用的。
这里不做重点介绍。
二、用代码修改。
这里介绍 C++
中用代码修改输出框显示文字的颜色。
具体代码是调用一个函数 SetConsoleTextAttribute( 参数表 ) 。
SetConsoleTextAttribute() 函数是一个 API
设置字体颜色和背景色的函数。
参数表中使用两个属性(属性之间用,隔开)。
GetStdHandle() 和 FOREGROUND_* 或 BACKGROUND_* 。
* 值为 INTENSITY 或 RED 或 GREEN 或 BLUE。
第一个属性获得句柄(即要设置颜色的地方),第二个属性设置颜色。
属性相加是在属性值中间加“ | ”隔开即可。
GetStdHandle(STD_OUTPUT_HANDLE) 获得句柄。
FOREGROUND_INTENSITY 表示设置前景色为高亮显示。
FOREGROUND_RED 表示设置前景色为红色,即字体颜色为红色。
FOREGROUND_GREEN 表示设置前景色为绿色,即字体颜色为绿色。
FOREGROUND_BLUE 表示设置前景色为蓝色,即字体颜色为蓝色。
BACKGROUND_INTENSITY 表示设置背景色为高亮显示。
BACKGROUND_RED 表示设置背景色为红色。
BACKGROUND_GREEN 表示设置背景色为绿色。
BACKGROUND_BLUE 表示设置背景色为蓝色。
…… …… …… …… …… ……
说明:在使用时要在预处理中包含 window.h 头文件
举例如下:
#include
#include"windows.h"
using namespace std;
void main()
{
cout<<" 原色 testCOLOR (没有设置字体颜色) "<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_I NTENSITY| FOREGROUND_RED|
FOREGROUND_GREEN|FOREGROUND_BLUE);// 设置三色相加
cout<<" 白色 testCOLOR (红色绿色蓝色相加) "<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_I NTENSITY|FOREGROUND_RED);
// 设置红色
cout<<" 红色 testCOLOR (设置的颜色为红色) "<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_I NTENSITY|FOREGROUND_GREEN)
; // 设置绿色
cout<<" 绿色 testCOLOR (设置的颜色为绿色) "<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_I NTENSITY|FOREGROUND_BLUE);
// 设置蓝色
cout<<" 蓝色 testCOLOR (设置的颜色为蓝色) "<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_I NTENSITY|FOREGROUND_RED|
FOREGROUND_GREEN);// 设置红色和绿色相加 cout<<" 黄色 testCOLOR (红色和绿色相加色) "<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_I NTENSITY|FOREGROUND_RED|
FOREGROUND_BLUE);// 设置红色和蓝色相加 cout<<" 粉色 testCOLOR (红色和蓝色相加色) "<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_I NTENSITY|FOREGROUND_GREEN|
FOREGROUND_BLUE);// 设置绿色和蓝色相加 cout<<" 青色 testCOLOR (绿色和蓝色相加色) "<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_I NTENSITY);
// 设置颜色,没有添加颜色,故为原色
cout<<endl;
}
效果图:。