zoukankan      html  css  js  c++  java
  • .NET平台开源项目速览(17)FluentConsole让你的控制台酷起来

    从该系列的第一篇文章 .NET平台开源项目速览(1)SharpConfig配置文件读写组件 开始,不知不觉已经到第17篇了。每一次我们都是介绍一个小巧甚至微不足道的.NET平台的开源软件,或者学习,或者使用,或者介绍,或者分析原理等等,其实这个过程也让我了解了很多东西。也希望这个分享系列继续给大家带来收获,根据大家的评论和反应,其实说明这些小的组件都还不错,可以提高开发效率。
    今天继续给大家介绍一款简单到爆的开源组件,但是可以让你的控制台瞬间高大上。

    1.控制台能有啥滑头?

    借用新生命论坛的一张图片,其实X组件里面也能这样控制,只不过我今天看到的组件使用起来更流程和功能单一一点。忽略图中内容,看控制台颜色:

      看到别人的控制台花花绿绿,其实挺好玩的,是不是感觉逼格很高?
      如果可以非常灵活的自由控制颜色,那该多好?
      没错,So Easy。。。其实很简单。其实Console里面都提供了这些控制功能。只不过作为入门级的Console,貌似没多少人会想到去研究这里面的东西。
      来看看我们今天的主题:FluentConsole

    2.FluentConsole基本介绍

      FluentConsole是一个托管在github的C#开源组件,地址:https://github.com/ashmind/FluentConsole
      FluentConsole,主要功能非常简单,意思是更流程的控制台。。其实真的Very Fluent。一起看看,时间很短,5分钟足以。他的基本功能有:
    1.可以控制Console输入的背景,以及字体的颜色;
    2.可以使用条件输出和控制;
    3.标准的链式写法,非常灵活和流畅,体验很棒。
      看看下面的例子和效果。

    3.使用介绍

    FluentConsole使用非常简单,我们在这里提供2个小节,主要是基本的和扩展的

    3.1 基本用法

    可以使用FluentConsole.Instance或者FluentConsole来直接操作对应颜色和文字。
    我们在使用过程中Line代表换行输出,效果等同于Console.WriteLine
    Text代表直接输出,不换行,效果等同于Console.Write
    可以使用BackGround设置背景,设置字体颜色直接是Text或者Line。看看下面的代码和注释 

    FluentConsole.White.Background.Black.Line("Black");
    FluentConsole
    	.Cyan.Line("Cyan")
    	.DarkBlue.Line("DarkBlue")
    	.DarkCyan.Line("DarkCyan")
    	.DarkGray.Line("DarkGray")
    	.DarkGreen.Line("DarkGreen")
    	.DarkMagenta.Line("DarkMagenta")
    	.DarkRed.Line("DarkRed")
    	.DarkYellow.Line("DarkYellow")
    	.Gray.Line("Gray")
    	.Green.Line("Green")
    	.Magenta.Line("Magenta")
    	.Red.Line("Red")
    	.White.Line("White")
    	.Yellow.Line("Yellow");
    Console.ReadKey();


    效果如下:

    public static void TestByStatic()
    {
    	//Text相当于 Console.Write
    	//Line相当于 Console.WriteLine
    
    	//将控制台的颜色对象直接用于设置输出的Text
    	FluentConsole.Yellow.Text("输入黄色字体");
    
    	FluentConsole.Yellow.Background
    				 .Blue.Line("设置黄色背景,和蓝色文字");
    
    	FluentConsole.Yellow.Text("黄色")
    				 .Red.Line("红色");
    
    	var console = FluentConsole.Instance;
    	console.Red.Text("另外的用法");
    
    	//条件用法
    	FluentConsole.Yellow.Line("当前对象状态:")
    				 .With(c => 10 > 8 ? c.Red : c.Blue)
    				 .Text("成功");
    }


    4.资源

      官网:https://github.com/ashmind/FluentConsole
      源代码与Demo:
      怎么样?赶紧去尝试一下吗?

  • 相关阅读:
    MFC菜单快捷键的应用
    TDD in C++
    Mapping
    初入股市者怎样看盘
    C++随笔分类列表(高级)
    C++代码优化
    IT生活
    十一年炒股的感悟
    框架设计(第2版)CLR Via C#(1)
    Visual Assist X自己常用的快捷功能
  • 原文地址:https://www.cnblogs.com/a-du/p/6950270.html
Copyright © 2011-2022 走看看