windows控制台字体颜色的编程

来源:互联网 发布:手机移动数据开关 编辑:程序博客网 时间:2024/05/16 07:08

如题:都需要哪些知识点呢??

1.可以调用函数system("cmd");头文件为stdlib.h.

函数中的cmd是dos命令,有以下常用的可以使用:

system ("cls");      //清屏;

system ("color 00");    //设置控制台前景背景颜色;

system ("pause");      //暂停程序并显示消息;

其他可以在cmd窗口中输入help得到更多;

2.想每一个字体颜色都不同可以调用如下:

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_BLUEText color contains blue.FOREGROUND_GREENText color contains green.FOREGROUND_REDText color contains red.FOREGROUND_INTENSITYText color is intensified.BACKGROUND_BLUEBackground color contains blue.BACKGROUND_GREENBackground color contains green.BACKGROUND_REDBackground color contains red.BACKGROUND_INTENSITYBackground color is intensified.COMMON_LVB_LEADING_BYTELeading byte.COMMON_LVB_TRAILING_BYTETrailing byte.COMMON_LVB_GRID_HORIZONTALTop horizontal.COMMON_LVB_GRID_LVERTICALLeft vertical.COMMON_LVB_GRID_RVERTICALRight vertical.COMMON_LVB_REVERSE_VIDEOReverse foreground and background attributes.COMMON_LVB_UNDERSCORE

Underscore.