简单的优化控制台界面设置

利用SetConsoleTextAttribute函数设置控制台颜色

颜色可以混合,遵循配色原理,也可以有明暗颜色

#include <windows.h>
#include <iostream>
using namespace std;
int main()
{
    HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);

    SetConsoleTextAttribute(handle, FOREGROUND_RED);
    cout << "Red     " << flush;
    SetConsoleTextAttribute(handle, FOREGROUND_RED | FOREGROUND_INTENSITY);
    cout << "Red" << endl;

    SetConsoleTextAttribute(handle, FOREGROUND_GREEN);
    cout << "Green   " << flush;
    SetConsoleTextAttribute(handle, FOREGROUND_GREEN | FOREGROUND_INTENSITY);
    cout << "Green" << endl;

    SetConsoleTextAttribute(handle, FOREGROUND_BLUE);
    cout << "Blue    " << flush;
    SetConsoleTextAttribute(handle, FOREGROUND_BLUE | FOREGROUND_INTENSITY);
    cout << "Blue" << endl;

    SetConsoleTextAttribute(handle, FOREGROUND_RED | FOREGROUND_GREEN);
    cout << "Yellow  " << flush;
    SetConsoleTextAttribute(handle, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY);
    cout << "Yellow" << endl;

    SetConsoleTextAttribute(handle, FOREGROUND_GREEN | FOREGROUND_BLUE);
    cout << "Cyan    " << flush;
    SetConsoleTextAttribute(handle, FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY);
    cout << "Cyan" << endl;

    SetConsoleTextAttribute(handle, FOREGROUND_BLUE | FOREGROUND_RED);
    cout << "Magenta " << flush;
    SetConsoleTextAttribute(handle, FOREGROUND_BLUE | FOREGROUND_RED | FOREGROUND_INTENSITY);
    cout << "Magenta" << endl;

    SetConsoleTextAttribute(handle, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);
    cout << "White   " << flush;
    SetConsoleTextAttribute(handle, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY);
    cout << "White" << endl;
    system("pause");
    return 0;
}

 背景颜色

#include <windows.h>
#include <iostream>
using namespace std;
int main()
{
    HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);

    SetConsoleTextAttribute(handle, BACKGROUND_RED);
    cout << "Red     " << flush;
    SetConsoleTextAttribute(handle, BACKGROUND_RED | BACKGROUND_INTENSITY);
    cout << "Red     " << endl;

    SetConsoleTextAttribute(handle, BACKGROUND_GREEN);
    cout << "Green   " << flush;
    SetConsoleTextAttribute(handle, BACKGROUND_GREEN | BACKGROUND_INTENSITY);
    cout << "Green   " << endl;

    SetConsoleTextAttribute(handle, BACKGROUND_BLUE);
    cout << "Blue    " << flush;
    SetConsoleTextAttribute(handle, BACKGROUND_BLUE | BACKGROUND_INTENSITY);
    cout << "Blue    " << endl;

    SetConsoleTextAttribute(handle, BACKGROUND_RED | BACKGROUND_GREEN);
    cout << "Yellow  " << flush;
    SetConsoleTextAttribute(handle, BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_INTENSITY);
    cout << "Yellow  " << endl;

    SetConsoleTextAttribute(handle, BACKGROUND_GREEN | BACKGROUND_BLUE);
    cout << "Cyan    " << flush;
    SetConsoleTextAttribute(handle, BACKGROUND_GREEN | BACKGROUND_BLUE | BACKGROUND_INTENSITY);
    cout << "Cyan    " << endl;

    SetConsoleTextAttribute(handle, BACKGROUND_BLUE | BACKGROUND_RED);
    cout << "Magenta " << flush;
    SetConsoleTextAttribute(handle, BACKGROUND_BLUE | BACKGROUND_RED | BACKGROUND_INTENSITY);
    cout << "Magenta " << endl;

    SetConsoleTextAttribute(handle, BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE);
    cout << "White   " << flush;
    SetConsoleTextAttribute(handle, BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE | BACKGROUND_INTENSITY);
    cout << "White   " << endl;
    system("pause");
    return 0;
}

 

猜你喜欢

转载自www.cnblogs.com/stu-jyj3621/p/12945879.html