該實(shí)例有很多實(shí)現(xiàn)方法,下面介紹一種不同的給你:
創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)公司、成都網(wǎng)站制作公司、網(wǎng)站營(yíng)銷推廣、網(wǎng)站開(kāi)發(fā)設(shè)計(jì),對(duì)服務(wù)成都酒樓設(shè)計(jì)等多個(gè)行業(yè)擁有豐富的網(wǎng)站建設(shè)及推廣經(jīng)驗(yàn)。創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司成立于2013年,提供專業(yè)網(wǎng)站制作報(bào)價(jià)服務(wù),我們深知市場(chǎng)的競(jìng)爭(zhēng)激烈,認(rèn)真對(duì)待每位客戶,為客戶提供賞心悅目的作品。 與客戶共同發(fā)展進(jìn)步,是我們永遠(yuǎn)的責(zé)任!
首先要在窗體中載入以下控件: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)度條
設(shè)置ProgressBar的Minimum和Maximum屬性為循環(huán)的起始和終止數(shù)值
然后在代碼的循環(huán)體中計(jì)算當(dāng)前循環(huán)的進(jìn)度,然后設(shè)置進(jìn)度條的Value屬性,
將進(jìn)度顯示在進(jìn)度條上
有不是多線程的,.NET有一個(gè)異步控件來(lái)完成這個(gè)事情,BackgroundWorker。
多線程其實(shí)比你想象的簡(jiǎn)單,你計(jì)劃操作步驟,打比方說(shuō)我們處理一個(gè)文件,用進(jìn)度條來(lái)顯示進(jìn)度。我們可以定義解壓他進(jìn)度為5%,解密文件后哦進(jìn)度完成20%,讀取數(shù)據(jù)后進(jìn)度完成30%,重新整理插入數(shù)據(jù)后進(jìn)度完成60%,再加密,進(jìn)度為80%,再壓縮進(jìn)度為90%,再發(fā)送進(jìn)度為95%,刪除歷史記錄結(jié)束動(dòng)作進(jìn)度為100%。這種事就要多線程去完成,調(diào)用控件你就需要委托或者回調(diào)控件。
進(jìn)度條給他賦值就好了,程序運(yùn)行后你會(huì)發(fā)現(xiàn)進(jìn)度條在動(dòng)。
這是現(xiàn)在90%程序進(jìn)度條原理。
在vb點(diǎn)虐 工具箱中 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 控件又稱進(jìn)度條控件,它是一個(gè)應(yīng)用很廣的控件,可以在需要執(zhí)行較長(zhǎng)的程序過(guò)程中使用它來(lái)指示當(dāng)前任務(wù)執(zhí)行的進(jìn)度,如果這樣的過(guò)程中沒(méi)有視覺(jué)提示,用戶可能會(huì)認(rèn)為應(yīng)用程序不響應(yīng),通過(guò)在應(yīng)用程序中使用 ProgressBar,可以告訴用戶應(yīng)用程序正在執(zhí)行任務(wù)且仍在響應(yīng)。