Используйте пользовательские цвета консоли
Чтобы использовать другие цвета, чем предусмотрено черезConsoleColor
Я реализовал код, который вы можете найти нап / п здесь, Это решение отлично работает, я могу использовать любой цвет / цветовой код, который я хочу визуализировать. НоCONSOLE_SCREEN_BUFFER_INFO_EX
содержит только несколько разных цветов. Если я изменил напримерConsoleColor.White
вColor.LimeGreen
и напишите текст с этим цветом, он будет перекрашен, если я изменюConsoleColor.White
позже в другой цвет. Например:
Console.ForegroundColor = ConsoleColor.White;
Console.WriteLine("White text"); //text is white
Console.ReadKey(true);
ConsoleExtender.SetScreenColors(Color.Goldenrod, Color.Black);
Console.WriteLine("Goldenrod text"); //both lines are goldenrod
Console.ReadKey(true);
ConsoleExtender.SetScreenColors(Color.LimeGreen, Color.Black);
Console.WriteLine("LimeGreen text"); //all three lines are limegreen
Console.ReadKey(true);
Можно ли менять цвета во время выполнения, без рестайлинга текста, который уже виден?