C# 控制台程序设置字体颜色

时间:2023-03-08 22:24:42

这几天做了个程序,程序本身很简单。大体功能是输入查询条件,从数据库里取出结果计算并显示。但是用户的要求是使用控制台(console)来实现功能。由于功能简单,程序很快就做完了,在面向用户演示程序时,突然感觉到程序的显示并不友好,全是黑底白字。虽然用户需求的功能演示是成功了,但是显示结果过多时,控制台中的字体颜色看起来非常的不舒服。所以演示完程序后,就准备修改下字体的颜色。从网上搜索了一下,发现在C#中实现很简单,只需要几行代码即可实现。

代码如下:

Console.BackgroundColor = ConsoleColor.Blue; //设置背景色
Console.ForegroundColor = ConsoleColor.White; //设置前景色,即字体颜色
Console.WriteLine(“第一行白蓝.”);

Console.ResetColor(); //将控制台的前景色和背景色设为默认值
Console.BackgroundColor = ConsoleColor.Green;
Console.ForegroundColor = ConsoleColor.DarkGreen;
string value = “第三行 绿暗绿”;
Console.WriteLine(value.PadRight(Console.WindowWidth-value.Length)); //设置一整行的背景色

显示效果如下:

C# 控制台程序设置字体颜色

显示出console中支持的背景色及前景色

 static void ShowColor()
{
Type type = typeof(ConsoleColor);
Console.ForegroundColor = ConsoleColor.White;
foreach (var name in Enum.GetNames(type))
{
Console.BackgroundColor = (ConsoleColor)Enum.Parse(type, name);
Console.WriteLine(name);
}
Console.BackgroundColor = ConsoleColor.Black;
foreach (var name in Enum.GetNames(type))
{
Console.ForegroundColor = (ConsoleColor)Enum.Parse(type, name);
Console.WriteLine(name);
}
}

console中支持的字体效果图

C# 控制台程序设置字体颜色