首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
中国IT实验室Dotnet频道
中国IT教育
Google
首页 ASP.NET  C#  XML/WebService ADO.NET VC.NET VB.NET .NET 资讯动态 专题 RSS订阅 讨论 下载
您现在的位置: 中国IT实验室 >> Dotnet >> VB.NET >> 正文

VB2005中开发新一代控制台应用程序(3)

    七、 进度条进度显示
  
    在Update方法被调用前,在ConsoleProgressBar对象中什么也没有发生:
  
  Public Sub Update(ByVal CurrentValue As Long)
   m_currentValue = CurrentValue
   m_currentBarLength = CInt((m_currentValue / m_maximumValue) * m_length)
   Refresh()
  End Sub
  
    这个Update方法使用一个值作参数(在此是指当前刚刚复制的文件数)。我设置成员m_currentValue,然后计算m_currentBarLength。计算的结果为进度条当前应该覆盖的列数。
  
    最后,我调用Refresh方法,它又调用UpdatePercentComplete、UpdateProgressBar和UpdateMessageBar方法。
  
    因为所有这三个方法功能相类似,所以我将集中讨论UpdateProgressBar方法:
  
  Private Sub UpdateProgressBar()
   Dim originalForegroundColor As ConsoleColor = Console.ForegroundColor
   Dim originalBackgroundColor As ConsoleColor = Console .BackgroundColor
   Console.ForegroundColor = ConsoleColor.Black
   Console.BackgroundColor = ConsoleColor.Green
   Console.SetCursorPosition(m_left + 1 m_progressBarRow)
   Dim progress As New String("O", m_currentBarLength)
   Console.Write(progress)
   Console.ForegroundColor =originalForegroundColor
   Console.BackgroundColor = originalBackgroundColor
  End Sub
  
    首先,该代码保存当前的前景和背景颜色。然后,它把ForegroundColor属性设置为黑色,把BackgroundColor属性设置为绿色。在把光标放置到进度条的左边缘后,它打印一串长度为m_currentBarLength的“O”。
  
    八、 运行DirCopy
  
    你一定很想看到应用程序运行情况(参考图2和3),并想检查一下运行结果(参考图4)。我建立了一个目录,并使用一串哑文件来测试复制。我建议,在你使用DirCopy复制任何关键文件前,你也这样试验一下。
  


           图2:开始DirCopy
  
  


            图3:DirCopy运行中 


  图4:DirCopy运行完成
  
    九、 其它问题
  
    这个DirCopy应用程序,虽然有些用处,但是还远非成品。为了使其更为强壮,还需要增加大量的错误处理方式。你还可以改进ConsoleProgressBar类以实现更灵活的控制。下列是一些可能的改进:
  
    · 允许控制进度条的位置和长度
  
    · 允许百分比完成区域放到你选择的任何位置
  
    · 允许定制进度条中的消息
  
    · 添加一个选项以选择水平的或垂直的进度条
  
    十、 小结
  
    我希望,本文有助于你了解VB 2005所提供的部分新的控制台应用程序特征,尽管这些特征仅是其中的一部分。另外,我还鼓励你再分析一下其它一些控制台应用程序特征,并与本文介绍相结合以发现你更喜欢的特征。
【责编:John】

中国IT教育

相关产品和培训
文章评论
 友情推荐链接
 认证培训
 专题推荐

 ·WEB程序开发--ASP.NET和PHP、JSP究竟学哪个?
 ·五步带你入门XML
 ·关于Java框架技术专题
 ·XML全攻略技术专题
 ·JAVA开源技术介绍专题
 ·Java嵌入式开发之J2ME技术专题
 ·超前体验 Oracle 11g的5个新特性…
 ·揭密使用VB.NET的五个实用技巧
 ·Oracle和SQL Server常用函数对比专题…
 ·展现C#世界 C#程序设计专题…
 今日更新
 社区讨论
 博客论点
 频道精选
 Dotnet频道相关导航