Какая функция C++ меняет цвет текста или фона (MS Visual studio)? Например, cout<<"This text";
как сделать «Этот текст» красного цвета.Как изменить цвет текста или фона в консольном приложении Windows
ответ
Цвет - это не C++ вещь, а свойство вашего terminal. Если ваш терминал говорит ANSI (например, любой терминал Linux или DOS или Windows NT, если добавить DEVICE=C:\DOS\ansi.sys
к вашему config.sys
или более поздней версии Windows, если вы звоните в оболочку с cmd.exe /kansicon
), то вы можете попробовать следующий трюк:
#define ANSI_COLOR_RED "\x1b[31m"
#define ANSI_COLOR_GREEN "\x1b[32m"
#define ANSI_COLOR_YELLOW "\x1b[33m"
#define ANSI_COLOR_BLUE "\x1b[34m"
#define ANSI_COLOR_MAGENTA "\x1b[35m"
#define ANSI_COLOR_CYAN "\x1b[36m"
#define ANSI_COLOR_BRIGHT "\x1b[1m"
#define ANSI_COLOR_RESET "\x1b[0m"
std::cout << ANSI_COLOR_RED "Hello World\n" ANSI_COLOR_RESET;
Википедия имеет list of ANSI escape sequences.
Будет ли это работать в командной строке Windows? – Ferruccio
Вопрос был о WINDOWS. Это не работает в Windows Windows. – Kyberias
@ Kyberias: В Windows NT он загружает (загружает ansi.sys) (https://support.microsoft.com/kb/101875), как в DOS, или позже, если вы скажете 'cmd.exe/kansicon'. –
Я считаю, что вы ищете функцию SetConsoleTextAttribute
. Первый параметр, hConsoleOutput
, будет стандартным дескриптором вывода, полученным через GetStdHandle(STD_OUTPUT_HANDLE)
. Второй параметр представляет собой побитовое ИЛИ (|
) комбинацию желаемого character attributes.
Смотрите также: KB319883 How to change foreground colors and background colors of text in a Console window by using Visual C#
Вы можете изменить цвета для консольного приложения с помощью Win32 и вот пример того, как:
#include "stdafx.h"
#include <Windows.h>
#include <iostream>
using namespace std;
int main(void)
{
HANDLE hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
if (hStdout == INVALID_HANDLE_VALUE)
{
cout << "Error while getting input handle" << endl;
return EXIT_FAILURE;
}
//sets the color to intense red on blue background
SetConsoleTextAttribute(hStdout, FOREGROUND_RED | BACKGROUND_BLUE | FOREGROUND_INTENSITY);
cout << "This is intense red text on blue background" << endl;
//reverting back to the normal color
SetConsoleTextAttribute(hStdout, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);
return EXIT_SUCCESS;
}
Посмотрите на документацию MSDN для SetConsoleTextAttribute
функции и Console Screen Buffers для больше информации.
Более полный пример консольных приложений с использованием Win32 доступен here.
+1 хороший ответ ... но я должен прокомментировать #include "stdafx.h", чтобы запустить этот код на блоках кода ide. – nKandel
- 1. Изменить цвет фона на консольном приложении C#
- 2. Pyside line изменить цвет фона или текста?
- 3. Цвет в консольном приложении
- 4. Как изменить цвет фона кнопки в приложении Windows Phone?
- 5. Как изменить цвет фона SysDateTimePick32 или CDateTimeCtrl?
- 6. Как изменить цвет фона в приложении Android?
- 7. Как изменить цвет фона в приложении iPhone
- 8. Изменить цвет фона и текста
- 9. Как изменить цвет текста при изменении фона?
- 10. Как изменить цвет текста, определенный цветом фона?
- 11. Приложение для магазина Windows: изменить цвет фона в приложении
- 12. Как изменить цвет текста и фона?
- 13. Как изменить цвет фона текста на Android?
- 14. Как изменить цвет фона или текста для части QTreeWidgetItem
- 15. Как изменить цвет фона и цвет текста в jQuery
- 16. Изменить цвет фона текста в пользовательском ListView
- 17. Как изменить цвет фона страницы xaml в приложении wp7?
- 18. Изменить цвет фона ComboBox в Windows 8
- 19. Как изменить цвет фона прядильщика?
- 20. Как изменить цвет фона GtkTextView?
- 21. Как настроить UIDatePicker и изменить цвет текста и цвет фона?
- 22. Изменить цвет текста на основе цвета фона
- 23. Изменить цвет фона выбранного текста, HTML JQUERY
- 24. Программно изменить цвет фона некоторого текста
- 25. Используйте изображения вместо текста в консольном приложении
- 26. Изменить цвет фона пробела
- 27. Изменить цвет фона списка и цвет текста в андроиде
- 28. Как изменить цвет фона?
- 29. Изменить цвет фона оболочки python
- 30. Как изменить цвет фона combobox
Какой текст? Какой фон? Пожалуйста, будьте более конкретными. –
cout << "Этот текст"; – Wizard
Итак, вы имеете дело с консольным приложением? – Bart