关于VB.NET进度条的实例

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于VB.NET进度条的实例相关的知识,希望对你有一定的参考价值。

我想编一个进度条程序,让它每0.5秒进度增加1%,并用文本显示当前的进度,该如何实现?

该实例有很多实现方法,下面介绍一种不同的给你:
首先要在窗体中载入以下控件:progressbar(进度条),label(用来实时显示文本提示),两个timer(分别控制进度条进度的增减),然后用以下代码就能实现:
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Timer1.Enabled = True
Timer1.Interval = 500
Timer2.Interval = 500
ProgressBar1.Value = 0
ProgressBar1.Maximum = 100
ProgressBar1.Minimum = 0
End Sub
'上述过程是设置控件的初始值,也可以在属性面板设置
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
ProgressBar1.Value += 1
Label1.Text = "当前完成" & ProgressBar1.Value & "%"
If (ProgressBar1.Value = 100) Then
Timer1.Enabled = False
Timer2.Enabled = True
End If
End Sub
'timer1用来控制进度的增加
Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
ProgressBar1.Value -= 1
Label1.Text = "当前完成" & ProgressBar1.Value & "%"
If (ProgressBar1.Value = 0) Then
Timer1.Enabled = True
Timer2.Enabled = False
End If
End Sub
'time2用来控制进度的减少
End Class
参考技术A 给你个参考一下
private sub progressbar_run()
dim i, re as integer
me.progressbar1.maximum = 5000
me.progressbar1.minimum = 1
me.progressbar1.step = 1
me.progressbar1.value = 1
for i = 1 to 5000
系统处理过程:
next
me.progressbar1.value = 1
end sub

关于文件上传下载以及其他进度条的实现

现在我的上传,下载,或者某个批量的进度的进度条实现思路都是这样:

  定义一自定义类,列出总数量,完成数(有需求决定可分成功与失败)

  然后访问链接的时候进行处理,将session中存入自定义类,自定义类中存入初始化信息。并执行操作

  访问链接时异步进行ajax获取当前进度,得到session中自定义类,定时器ajax达到实时更新进度的效果。

 

文件上传使用了commons-fileupload的一个监听组件,在监听方法中可以得到upload的成功size

文件写入缓存的话这个模式感觉可以,下载的进度条思路现在还没:

  

 

处理的话就是try{}catch(Exception e){}

 

以上是关于关于VB.NET进度条的实例的主要内容,如果未能解决你的问题,请参考以下文章

关于VB.NET中进度条使用问题

Qt中如何改变QProgressBar中进度条的颜色?

关于文件上传下载以及其他进度条的实现

[terminal]关于进度条的学习

关于进度条的 6 个 Python 实用技巧

从“My.resources”VB.net 复制文件的进度条