อีกหนึ่ง Control ในการเพิ่มความหล่อให้กับ
Program ทำหน้าที่ในการสร้าง Process การทำงานอีก 1 Process มาทำงานพร้อมกับ Process ที่กำลังทำอยู่ในปัจจุบัน ด้วยส่วนใหญ่แล้วเรามักจะเอาBackgroundWorker ไปจับคู่ทำงานร่วมกับ ProgressBar เพื่อใช้สำหรับบอกความคืบหน้าในการทำงานของ Program สำหรับ Process ที่จำเป็นต้องใช้ระยะเวลาในการทำงานในระดับหนึ่ง ไปดูตัวอย่างการใช้งานกัน
ขั้นตอนที่ 1 ออกแบบ
ขั้นตอนที่ 2 Coding
Dim
Value As Double
Private Sub Button1_Click(sender As
System.Object, e As
System.EventArgs) _
Handles
Button1.Click
If
bw.IsBusy <> True Then
bw.RunWorkerAsync()
End If
End Sub
Private Sub bw_DoWork(sender As
System.Object, e As
System.ComponentModel.DoWorkEventArgs) _
Handles
bw.DoWork
Dim i As Integer
Dim
worker As System.ComponentModel.BackgroundWorker = CType(sender,
System.ComponentModel.BackgroundWorker)
For i =
TextBox1.Text To TextBox2.Text
worker.ReportProgress(i * 100 /
Val(TextBox2.Text))
Value += Val(TextBox1.Text)
Next
End Sub
Private Sub bw_ProgressChanged(sender As Object, e As System.ComponentModel.ProgressChangedEventArgs)
_
Handles
bw.ProgressChanged
ProgressBar1.Value =
e.ProgressPercentage.ToString
End Sub
Private Sub bw_RunWorkerCompleted(sender As Object, e As System.ComponentModel.RunWorkerCompletedEventArgs)
_
Handles
bw.RunWorkerCompleted
TextBox3.Text = Value
End Sub
ไม่มีความคิดเห็น:
แสดงความคิดเห็น