C# 控制台程序设置字体颜色
这几天做了个程序,程序本身很简单。大体功能是输入查询条件,从数据库里取出结果计算并显示。但是用户的要求是使用控制台(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)); //设置一整行的背景色
显示效果如下:
显示出console中支持的背景色及前景色
1 static void ShowColor() 2 { 3 Type type = typeof(ConsoleColor); 4 Console.ForegroundColor = ConsoleColor.White; 5 foreach (var name in Enum.GetNames(type)) 6 { 7 Console.BackgroundColor = (ConsoleColor)Enum.Parse(type, name); 8 Console.WriteLine(name); 9 } 10 Console.BackgroundColor = ConsoleColor.Black; 11 foreach (var name in Enum.GetNames(type)) 12 { 13 Console.ForegroundColor = (ConsoleColor)Enum.Parse(type, name); 14 Console.WriteLine(name); 15 } 16 }
console中支持的字体效果图