背景色を設定する方法を教えてください

C++では、コンソール画面の背景色を設定したい場合、WindowsAPI関数SetConsoleTextAttributeを使用できます。サンプルコードを以下に示します。

#include <iostream>
#include <Windows.h>

int main() {
    HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
    CONSOLE_SCREEN_BUFFER_INFO consoleInfo;
    WORD originalAttributes;

    // 获取当前控制台属性
    GetConsoleScreenBufferInfo(hConsole, &consoleInfo);
    originalAttributes = consoleInfo.wAttributes;

    // 设置控制台背景颜色
    SetConsoleTextAttribute(hConsole, BACKGROUND_BLUE);

    // 输出带有蓝色背景的文本
    std::cout << "Hello, World!" << std::endl;

    // 恢复原始控制台属性
    SetConsoleTextAttribute(hConsole, originalAttributes);
    
    return 0;
}

上記の例では、SetConsoleTextAttribute関数を使用してコンソールの背景色を青色に設定しています。その後、背景色を青色にした文字列を出力します。最後に、SetConsoleTextAttribute関数を使用してコンソール属性を元の状態に戻し、以後の出力に影響が出ないようにしています。

bannerAds