【问题标题】:Change color of cout text C++更改 cout 文本 C++ 的颜色
【发布时间】:2011-11-10 22:44:16
【问题描述】:

我正在尝试更改我的一些 cout 输出的颜色,但之后 cout 再次变为相同颜色。

我试过以下代码:

SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 4);
        cout << "Help-Please" << endl;

但即使在 cout 完成后它也会继续。还要补充一点,其中一些颜色变化将在 if 语句中。你会推荐我添加什么代码来获得这种效果?

【问题讨论】:

    标签: c++ colors cout


    【解决方案1】:

    文本颜色保持有效,您必须使用其他(以前的)颜色再次调用 SetConsoleTextAttribute。

    编辑:每个文本输出将使用上次调用 SetConsoleTextAttribute 的颜色,因此您可以在不同的行(或单词/字符)中使用不同的颜色。

    【讨论】:

    • 我试过了,谢谢,但它仍然保持文本的突出显示如何删除突出显示??
    • 文本高亮是什么意思?您是否记得或 FOREGROUND_...BACKGROUND_...酌情?
    • SetConsoleTextAttribute 只影响新打印的文本。它不会返回并更改已打印文本的颜色。如果您希望已打印的文本更改颜色,则需要返回并以新颜色重新打印。
    • 非常感谢大家,现在我明白了!! :)
    【解决方案2】:

    在 stdlib.h 中有一个颜色命令可以更改所有文本颜色。 即system("color 0B");

    【讨论】:

      猜你喜欢
      • 2020-12-19
      • 1970-01-01
      • 2019-04-06
      • 1970-01-01
      • 2015-07-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多