C++ 更改控制台显示文本颜色

来源:互联网 发布:游戏编程入门自学书籍 编辑:程序博客网 时间:2024/06/08 06:42

C++ 更改控制台显示文本颜色

 

两种方法

一种方法


获得控制台输入输出句柄

  • 函数原型: HANDLE GetStdHandle(DWORD nStdHandle);
  • 参数:
    • nStdHandle定义函数返回的是标准输入或标准输出或标准错误的句柄.取值为一下
      • STD_INPUT_HANDLE 标准输入
      • STD_OUTPUT_HANDLE 标准输出
      • STD_ERROR_HANDLE 标准错误
  • 返回值:
    • 如果函数成功,这个返回值为设备资源句柄
    • 如果函数是吧,返回值是INVALID_HANDLE_VALUE标准,如果想要知道错误信息,调用GetLastError函数去获得
  • 头文件: window.h
  • 说明: 返回一个标准输入或输出或错误的句柄

设置控制台输入输出文本前景色背景色

  • 函数原型: BOOL SetConsoleTextAttribute(HANDLE hConsoleOutput,WORD wAttributes );
  • 参数:
    • hConsoleOutput 控制台的资源句柄, 该句柄必须具有GENERIC_READ访问权限
    • wAttributes设置文本前景色和背景色的具体值,取值如下,可以使一个或 者组合
      • FOREGROUND_BLUE 前景色为蓝
      • FOREGROUND_GREEN 前景色为绿
      • FOREGROUND_RED 前景色为红
      • FOREGROUND_INTENSITY 前景色为强光
      • BACKGROUND_BLUE 背景色为蓝
      • BACKGROUND_GREEN 背景色为绿
      • BACKGROUND_RED 背景色为红
      • BACKGROUND_INTENSITY 背景色为强光
  • 头文件: window.h
  • 说明: 用于设置文本前景色和背景色,只对在其后的文本输出或输入

使用步骤
声明一个 HANDLE句柄并获得标准输出句柄用GetStdHandle(STD_OUTPUT_HANDLE)

调用SetConsoleTestAttribute函数设置文本前景色和背景色

例子:

实现一个在 dos 界面上的色彩菜单:

View Code

输出结果:

另一种方法


设置控制台输入输出前景色背景色

  • 函数原型:
    • int system( const char *command );
    • int _wsystem( const wchar_t *command );
  • 参数:
    • command为"color xy"color为关键字,x为背景色,y为前景色.x,y可以取值为
      • 0=黑色
      • 1=蓝色
      • 2=绿色
      • 3=湖蓝色
      • 4=红色
      • 5=紫色
      • 6=黄色
      • 7=白色
      • 8=灰色
      • 9=淡蓝色
      • A=淡绿色
      • B=淡浅绿色
      • C=淡红色
      • D=淡紫色
      • E=淡黄色
      • F=亮白色
  • 头文件:cstdlib

 例子:

使控制台背景为量白色,文本字体颜色为蓝色:

复制代码
 1 #include<iostream>   2 #include<cstdlib>     3 //头文件定义 4 using namespace std; 5  6 int main() 7 //主函数 8 { 9     system("color F1");10     cout<<"change!"<<endl;11     system("pause");12     return 0;13 }
复制代码

输出结果:

0 0
原创粉丝点击