VB.Net中提供了ProgressBar控件,用于顯示進度條
創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都做網(wǎng)站、成都網(wǎng)站設(shè)計、望江網(wǎng)絡(luò)推廣、小程序設(shè)計、望江網(wǎng)絡(luò)營銷、望江企業(yè)策劃、望江品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供望江建站搭建服務(wù),24小時服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com
設(shè)置ProgressBar的Minimum和Maximum屬性為循環(huán)的起始和終止數(shù)值
然后在代碼的循環(huán)體中計算當(dāng)前循環(huán)的進度,然后設(shè)置進度條的Value屬性,
將進度顯示在進度條上
該實例有很多實現(xiàn)方法,下面介紹一種不同的給你:
首先要在窗體中載入以下控件:progressbar(進度條),label(用來實時顯示文本提示),兩個timer(分別控制進度條進度的增減),然后用以下代碼就能實現(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
'上述過程是設(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用來控制進度的增加
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用來控制進度的減少
End Class
有不是多線程的,.NET有一個異步控件來完成這個事情,BackgroundWorker。
多線程其實比你想象的簡單,你計劃操作步驟,打比方說我們處理一個文件,用進度條來顯示進度。我們可以定義解壓他進度為5%,解密文件后哦進度完成20%,讀取數(shù)據(jù)后進度完成30%,重新整理插入數(shù)據(jù)后進度完成60%,再加密,進度為80%,再壓縮進度為90%,再發(fā)送進度為95%,刪除歷史記錄結(jié)束動作進度為100%。這種事就要多線程去完成,調(diào)用控件你就需要委托或者回調(diào)控件。
進度條給他賦值就好了,程序運行后你會發(fā)現(xiàn)進度條在動。
這是現(xiàn)在90%程序進度條原理。