看到[vb.net]控制台进度条的示例

感觉很好玩,翻译成C#版。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Threading;

namespace ConsoleProcessBar
{
    class Program
    {
        static void Main(string[] args)
        {
            Boolean isBreak = false;
            ConsoleColor colorBack = Console.BackgroundColor;
            ConsoleColor colorFore = Console.ForegroundColor;
            //(0,0)(Left,Top) 第一行
            Console.WriteLine("***********TE Mason*************");
            Console.BackgroundColor = ConsoleColor.DarkCyan;
            for (int i = 0; i < Console.WindowWidth - 3; i++)
            {
                //(0,1) 第二行
                Console.Write(" ");
            }
            //(0,1) 第二行
            Console.WriteLine(" ");
            Console.BackgroundColor = colorBack;
            //'(0,2) 第三行
            Console.WriteLine("0%");
            // '(0,3) 第四行
            Console.WriteLine("<按【Enter】键停止>");

            for (int i = 0; i <= 100; i++)
            {
                if (Console.KeyAvailable && Console.ReadKey(true).Key == ConsoleKey.Enter)
                {
                    isBreak = true;
                    break;
                }
                Console.BackgroundColor = ConsoleColor.Yellow;
                // '/返回完整的商,包括余数,SetCursorPosition会自动四舍五入
                Console.SetCursorPosition(i * (Console.WindowWidth - 2) / 100, 1);
                // 'MsgBox(i * (Console.WindowWidth - 2) / 100);
                // 'MsgBox(Console.CursorLeft);
                //'MsgBox(Console.CursorSize);
                Console.Write(" ");
                Console.BackgroundColor = colorBack;
                Console.ForegroundColor = ConsoleColor.Green;
                Console.SetCursorPosition(0, 2);
                Console.Write("{0}%", i);
                Console.ForegroundColor = colorFore;
                Thread.Sleep(500);
            }

            Console.SetCursorPosition(0, 3);
            Console.Write(isBreak ? "停止!!!" : "完成");
            Console.WriteLine("                           ");
            Console.ReadKey();
            Console.ReadKey(true);
        }
    }
}

[c#]控制台进度条的示例的更多相关文章

  1. [vb.net]控制台进度条的示例

    Private Sub ConsoleProcessBar() Dim isBreak As Boolean = False Dim colorBack As ConsoleColor = Conso ...

  2. 用C#实现控制台进度条

    在写一些简单的控制台测试程序时,经常希望能够在程序运行的过程中实现进度条的功能以便查看程序运行的速度或者进度.本文以C#为例,实现简单的控制台进度条,以供大家参考(本文底部附下载地址). 1.实现效果 ...

  3. Python 控制台进度条的实现

    进行爬虫等耗时的任务时,有时会想在控制台输出进度条,以显示当前任务进度.这里总结了两种方法. 方法1:使用tqdm模块 示例代码: from time import sleep from tqdm i ...

  4. Python中如何写控制台进度条的整理

    本文实例讲述了Python显示进度条的方法,是Python程序设计中非常实用的技巧.分享给大家供大家参考.具体方法如下: 首先,进度条和一般的print区别在哪里呢? 答案就是print会输出一个\n ...

  5. ruby 编写控制台进度条

    ruby 中,$stdout.flush 让控制台当前行内容可以重写,以此我们可以做出进度条的效果. def set_progress(index, char = '*') print (char * ...

  6. php+javascript实现的动态显示服务器运行程序进度条功能示例

    本文实例讲述了php+javascript实现的动态显示服务器运行程序进度条功能.分享给大家供大家参考,具体如下: 经常有这样的业务要处理,服务器上有较多的业务需要处理,需要分批操作,于是就需要一个提 ...

  7. C#控制台进度条(Programming Progress bar in C# Consle application)

    以下代码从Stack Overflow,觉得以后会用到就收藏一下,我是辛勤的搬运工,咿呀咿呀哟- 1.showing percentage in .net console application(在. ...

  8. Bootstrap 警告、进度条、列表组、面板

    摘要:该部分包括警告.进度条.列表组.面板等部分. 1.警告(alert) 1.1 基本的警告(.alert) 警告的基类是 .alert .和其他样式类一块使用.例如: .alert-success ...

  9. 微信小程序组件解读和分析:六、progress进度条

    progress进度条组件说明: 进度条,就是表示事情当前完成到什么地步了,可以让用户视觉上感知事情的执行.progress进度条是微信小程序的组件,和HTML5的进度条progress类似. pro ...

随机推荐

  1. DropdownList控件绑定数据源显示system.data.datarowview的问题

    .net开发的时候经常需要用到在后台取数据再绑定到控件的问题,通常只需要连接数据库,从数据库取出数据,放到Dataset里面,然后再设置控件的DataSource为这个Dataset,然后再datab ...

  2. css background-position:x% y%

    规则1: background-position:xpx ypx; 为正值时:背景图片的左上顶点朝右下移动直至距离div的左上顶点为xpx ypx: 规则2: background-position: ...

  3. sudo gedit xx warning

    When I sue command "sudo gedit xx", it appeas several warning: gedit:): IBUS-WARNING **: T ...

  4. c++ bitset类的使用和简介

    http://blog.163.com/lixiangqiu_9202/blog/static/53575037201251121331412/

  5. 当fixed元素相互嵌套时chrome下父元素会影响子元素的层叠关系

    问题:fixed元素被另一个fixed元素包含的时候在chrome下fixed子元素的定位会受到父元素的影响. demo(http://jsbin.com/qumah/1): <!DOCTYPE ...

  6. 更改Altium中PCB大小/精确确定板子尺寸

    使用原理图生成PCB后,Altium Designer会根据原理图大小自动生成一块黑色区域,还有一个在禁止布线层的方框,还有两段标注板子大小的线.下面说一下如何更改黑色区域的大小,还有如何精确确定板子 ...

  7. rm: cannot remove `/home/cn0000/log/formlog.20140417': Read-only file system

    [root@localhost home]# su - cn0000 rm: cannot remove `/home/cn0000/log/monitor_xmllog.20140417': Rea ...

  8. HDU4436---str2int 后缀树组(12年天津区域赛)

    str2int Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total S ...

  9. 11636 - Hello World! (贪心法)

    Problem A Hello World!  Input: Standard Input Output: Standard Output When you first made the comput ...

  10. wm命令用法及LCD显示图标大小不正常时解决的方法

    注:Android 4.3引入的wm工具 wm命令及使用方法: 系统说明: usage: wm [subcommand] [options]                               ...