vb点虐 进度条实例的简单介绍

VB.NET显示程序的进度,该怎么做?

VB本身有进度条控件。程序启动时加载多少控配置,组件都是编写源码时可知的。进度条的上限就是加载组件,配置数的和,加载成功一个就自加1

我们提供的服务有:网站设计、网站制作、微信公众号开发、网站优化、网站认证、庐山ssl等。为上千家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的庐山网站制作公司

VB .NET如何在计算过程中加入进度条?

VB.Net中提供了ProgressBar控件,用于显示进度条

我建议你不要用进度条显示剩余时间而是显示执行进度

这样比较好控制

设置ProgressBar的Minimum和Maximum属性为循环的起始和终止数值

然后在代码的循环体中计算当前循环的进度,然后设置进度条的Value属性,

将进度显示在进度条上

比如,简单的例子:

Dim Progress As Integer

ProgressBar1.Minimum = Min

ProgressBar1.Maximum = Max

For i As Integer = Min To Max

'执行计算.......

Progress = i \ Max '计算进度

ProgressBar1.Value = Progress '显示进度

My.Application.DoEvents() '使用Doevents防止窗体假死使进度条看不到,但是会严重降低运行速度

Next

这里的优化技巧是,可以设置为每隔N次循环才更新进度条

If Not Progress Mod N Then ProgressBar1.Value = Progress

不然进度条的更新也许比计算的速度还要慢很多

vb点虐 进度条(ProgressBar)和 Timer 控件怎么用?

这个不象是怎么传递Pr值的问题吧,是不是读取过程中卡啊?

在pr=J 下面加一句My.Application.DoEvents() ,暂时释放一下控制权,使程序去处理完其它事件。再说不需要时间控件,直接在循环过程中修改进度值也可以,然后来一句My.Application.DoEvents()。

关于VB.NET进度条的实例

该实例有很多实现方法,下面介绍一种不同的给你:

首先要在窗体中载入以下控件: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


文章名称:vb点虐 进度条实例的简单介绍
文章地址:http://cdiso.cn/article/ddgceic.html

其他资讯