在向大家详细介绍VB ConsoleProgressBar之前,首先让大家了解下CopyFiles,然后全面介绍VB ConsoleProgressBar。CopyFiles负责取得源目录下的一个文件列表,然后把它们复制到目的目录下。另外,它还创建了一个ConsoleProgressBar对象来管理进度条:
创新互联是专业的洛宁网站建设公司,洛宁接单;提供网站建设、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行洛宁网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
- Private Sub CopyFiles(ByVal srcDir As String, ByVal destDir As String)
- Const BufferSourceTopLine As Integer = 8
- Const BufferDestinationTopLine As Integer = 7
- Dim rowIndex As Integer = 7
- Dim originalForegroundColor As ConsoleConsoleColor = Console.ForegroundColor
- Console.CursorVisible = False
- Console.Clear()
- Dim numberOfFiles As Integer
- numberOfFiles = My.Computer.FileSystem.GetFiles(srcDir).Count
- Dim PB As New ConsoleProgressBar(numberOfFiles)
- DisplayHeader(srcDir, destDir)
- Dim fileCounter As Integer = 1
- For Each f As String In My.Computer.FileSystem.GetFiles(srcDir)
- Dim fi As New System.IO.FileInfo(f)
- Console.ForegroundColor = ConsoleColor.Green
- Console.SetCursorPosition(0, rowIndex)
- Console.Write(fi.Name)
- If rowIndex < Console.WindowHeight - 1 Then
- rowIndex += 1
- Else
- Console.MoveBufferArea(0,BufferSourceTopLine, _
- Console.WindowWidth, _
- Console.WindowHeight - _
- BufferSourceTopLine, _
- 0, _
- BufferDestinationTopLine)
- End If
- My.Computer.FileSystem.CopyFile(fi.FullName, destDir &"\" & fi.Name)
- pb.Update( fileCounter)
- fileCounter += 1
- Next
- Console.ForegroundColor = originalForegroundColor
- Console.SetCursorPosition(0, Console.WindowHeight - 1)
- Console.CursorVisible = True
- End Sub
首先,该代码保存当前的ForegroundColor。然后,它使用另外一种新特征把CursorVisible属性设置为False。在清除控制台窗口后,它检索在源目录下的文件个数并且使用这个数字作为VB ConsoleProgressBar构造器的***值。稍后,我还要讨论有关于 ConsoleProgressBar的细节信息。
我调用DisplayHeader子程序来把一些有关复制操作的信息打印到控制台窗口。由于其功能非常类似于DisplayUsage子程序,所以我在此省略对其细节的讨论。
我使用了一个“For...Each”循环来遍历在源目录下的所有文件,并使用了一个rowIndex变量来跟踪要把文件名打印到控制台的哪一行。随着循环的不断执行,rowIndex每次增加1,直到到达控制台窗口的底部为止。一旦到达控制台窗口的底部,我利用另外一个新控制台应用程序特征— MoveBufferArea方法(下一节讨论)。
在更新显示和复制文件后,我通过调用VB ConsoleProgressBar类的Update方法来更新进度条。
一旦循环结束并且文件复制结束,我再把ForegroundColor设置回其原来的颜色,并且把光标位置设置到控制台窗口的最下面一行,并且使之再次可见。
新闻名称:VBConsoleProgressBar简单介绍
本文路径:http://www.mswzjz.com/qtweb/news30/179880.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联