該實(shí)例有很多實(shí)現(xiàn)方法,下面介紹一種不同的給你:
創(chuàng)新互聯(lián)是一家專(zhuān)業(yè)提供中山企業(yè)網(wǎng)站建設(shè),專(zhuān)注與成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè)、HTML5、小程序制作等業(yè)務(wù)。10年已為中山眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專(zhuān)業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。
首先要在窗體中載入以下控件:progressbar(進(jìn)度條),label(用來(lái)實(shí)時(shí)顯示文本提示),兩個(gè)timer(分別控制進(jìn)度條進(jìn)度的增減),然后用以下代碼就能實(shí)現(xiàn):
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
'上述過(guò)程是設(shè)置控件的初始值,也可以在屬性面板設(shè)置
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
ProgressBar1.Value += 1
Label1.Text = "當(dāng)前完成" ProgressBar1.Value "%"
If (ProgressBar1.Value = 100) Then
Timer1.Enabled = False
Timer2.Enabled = True
End If
End Sub
'timer1用來(lái)控制進(jìn)度的增加
Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
ProgressBar1.Value -= 1
Label1.Text = "當(dāng)前完成" ProgressBar1.Value "%"
If (ProgressBar1.Value = 0) Then
Timer1.Enabled = True
Timer2.Enabled = False
End If
End Sub
'time2用來(lái)控制進(jìn)度的減少
End Class
VB.Net中提供了ProgressBar控件,用于顯示進(jìn)度條
我建議你不要用進(jìn)度條顯示剩余時(shí)間而是顯示執(zhí)行進(jìn)度
這樣比較好控制
設(shè)置ProgressBar的Minimum和Maximum屬性為循環(huán)的起始和終止數(shù)值
然后在代碼的循環(huán)體中計(jì)算當(dāng)前循環(huán)的進(jìn)度,然后設(shè)置進(jìn)度條的Value屬性,
將進(jìn)度顯示在進(jìn)度條上
比如,簡(jiǎn)單的例子:
Dim Progress As Integer
ProgressBar1.Minimum = Min
ProgressBar1.Maximum = Max
For i As Integer = Min To Max
'執(zhí)行計(jì)算.......
Progress = i \ Max '計(jì)算進(jìn)度
ProgressBar1.Value = Progress '顯示進(jìn)度
My.Application.DoEvents() '使用Doevents防止窗體假死使進(jìn)度條看不到,但是會(huì)嚴(yán)重降低運(yùn)行速度
Next
這里的優(yōu)化技巧是,可以設(shè)置為每隔N次循環(huán)才更新進(jìn)度條
If Not Progress Mod N Then ProgressBar1.Value = Progress
不然進(jìn)度條的更新也許比計(jì)算的速度還要慢很多
VB.Net中提供了ProgressBar控件,用于顯示進(jìn)度條
設(shè)置ProgressBar的Minimum和Maximum屬性為循環(huán)的起始和終止數(shù)值
然后在代碼的循環(huán)體中計(jì)算當(dāng)前循環(huán)的進(jìn)度,然后設(shè)置進(jìn)度條的Value屬性,
將進(jìn)度顯示在進(jìn)度條上
在vb.net工具箱中 ProgressBar 控件圖標(biāo)。
ProgressBar 控件常用屬性有:Maximum、Minimum、Step、Value;常用的方法有:PerformStep、Increment。
Maximum、Minimum 屬性:指ProgressBar 控件可變化的最大和最小值。
Step 屬性:ProgressBar 控件調(diào)用 PerformStep 方法時(shí)候增長(zhǎng)的步長(zhǎng)。
Value 屬性:ProgressBar 控件當(dāng)前的位置值。
PerformStep 方法:按照 Step 屬性的數(shù)量增加進(jìn)度欄的當(dāng)前位置。
Increment 方法:按指定的數(shù)量增加進(jìn)度欄的當(dāng)前位置。
ProgressBar 控件又稱(chēng)進(jìn)度條控件,它是一個(gè)應(yīng)用很廣的控件,可以在需要執(zhí)行較長(zhǎng)的程序過(guò)程中使用它來(lái)指示當(dāng)前任務(wù)執(zhí)行的進(jìn)度,如果這樣的過(guò)程中沒(méi)有視覺(jué)提示,用戶(hù)可能會(huì)認(rèn)為應(yīng)用程序不響應(yīng),通過(guò)在應(yīng)用程序中使用 ProgressBar,可以告訴用戶(hù)應(yīng)用程序正在執(zhí)行任務(wù)且仍在響應(yīng)。
網(wǎng)站標(biāo)題:vb.net中運(yùn)行進(jìn)度條 VB進(jìn)度條
分享路徑:http://chinadenli.net/article38/hgdopp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、外貿(mào)網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站建設(shè)、手機(jī)網(wǎng)站建設(shè)、電子商務(wù)、
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)