C/C++控制台输出时设置字体及背景颜色

来源:网络时间:2011-06-24 17:05:44

  0.设置控制台输出行数和列数

  system("mode con:cols=100 lines=20000");

  1.改变整个控制台的颜色

  用 system("color 0A");

  其中color后面的0是背景色代号,A是前景色代号。各颜色代码如下:

  0=黑色

  1=蓝色

  2=绿色

  3=湖蓝色

  4=红色

  5=紫色

  6=黄色

  7=白色

  8=灰色

  9=淡蓝色

  A=淡绿色

  B=淡浅绿色

  C=淡红色

  D=淡紫色

  E=淡黄色

  F=亮白色

  2.改变下一个输出或者输入字体和背景的颜色

  采用SetConsoleTextAttribute函数,如

  White on Black:

  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |

  FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);

  Red on Black:

  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |

  FOREGROUND_RED);

  Green on Black:

  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |

  FOREGROUND_GREEN);

  Yellow on Black:

  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |

  FOREGROUND_RED | FOREGROUND_GREEN);

  Blue on Black:

  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |

  FOREGROUND_BLUE);

  Magenta on Black:

  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |

  FOREGROUND_RED | FOREGROUND_BLUE);

  Cyan on Black:

  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |

  FOREGROUND_GREEN | FOREGROUND_BLUE);

  Black on Gray:

  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |

  BACKGROUND_INTENSITY);

  Black on White:

  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |

  FOREGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE);

  Red on White:

  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |

  FOREGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE |

  FOREGROUND_RED);

  等等。

  需要引入头文件:

  windows.h

  函数原型:

  BOOL SetConsoleTextAttribute( HANDLE hConsoleOutput, WORD wAttributes );

  wAttributes 的取值含义对应如下:

  Attribute Meaning

  FOREGROUND_BLUE Text color contains blue.

  FOREGROUND_GREEN Text color contains green.

  FOREGROUND_RED Text color contains red.

  FOREGROUND_INTENSITY Text color is intensified.

  BACKGROUND_BLUE Background color contains blue.

  BACKGROUND_GREEN Background color contains green.

  BACKGROUND_RED Background color contains red.

  BACKGROUND_INTENSITY Background color is intensified.

  COMMON_LVB_LEADING_BYTE Leading byte.

  COMMON_LVB_TRAILING_BYTE Trailing byte.

  COMMON_LVB_GRID_HORIZONTAL Top horizontal.

  COMMON_LVB_GRID_LVERTICAL Left vertical.

  COMMON_LVB_GRID_RVERTICAL Right vertical.

  COMMON_LVB_REVERSE_VIDEO Reverse foreground and background attributes.

  COMMON_LVB_UNDERSCORE Underscore.

文章内容来源于网络,不代表本站立场,若侵犯到您的权益,可联系我们删除。(本站为非盈利性质网站) 联系邮箱:rjfawu@163.com
多特网友 2014-06-23 17:47:08 回复
不怕大伙笑话,我之前可没想到system还有恁多功能!
多特网友 2014-06-19 22:20:45 回复
好像没看到调整字体的
多特网友 2014-06-23 17:47:08 回复
不怕大伙笑话,我之前可没想到system还有恁多功能!
多特网友 2014-06-19 22:20:45 回复
好像没看到调整字体的