Author:水如烟
进度不可预知,所以只是置ProgressBar.Style = Marquee。
使用方法:
Public Class MainForm
'示例一,一般消息提示
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.Show(LzmTW.uSystem.uWindows.uForms.ProgressFormStyle.OnlyMessage)
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.SetText("区划代码数据更新")
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.SendMessage("正在测试网络")
'do
Threading.Thread.Sleep(1000)
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.SendMessage("正在下载数据...")
'do
Threading.Thread.Sleep(1000)
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.SendMessage("正在提交数据到数据库...")
'do
Threading.Thread.Sleep(1000)
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.SendMessage("区划代码数据更新完毕")
Threading.Thread.Sleep(1000)
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.Close()
End Sub
End Class
'示例一,一般消息提示
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.Show(LzmTW.uSystem.uWindows.uForms.ProgressFormStyle.OnlyMessage)
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.SetText("区划代码数据更新")
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.SendMessage("正在测试网络")
'do
Threading.Thread.Sleep(1000)
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.SendMessage("正在下载数据...")
'do
Threading.Thread.Sleep(1000)
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.SendMessage("正在提交数据到数据库...")
'do
Threading.Thread.Sleep(1000)
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.SendMessage("区划代码数据更新完毕")
Threading.Thread.Sleep(1000)
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.Close()
End Sub
End Class
Public Class MainForm
'示例二,线程处理
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.Show(AddressOf TestUpdate, LzmTW.uSystem.uWindows.uForms.ProgressFormStyle.ProgressWithCancel)
End Sub
Private Sub TestUpdate()
'do
For i As Integer = 0 To 1000000
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.SendMessage("正处理第{0}项数据", New Object() {i})
Next
End Sub
End Class
'示例二,线程处理
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.Show(AddressOf TestUpdate, LzmTW.uSystem.uWindows.uForms.ProgressFormStyle.ProgressWithCancel)
End Sub
Private Sub TestUpdate()
'do
For i As Integer = 0 To 1000000
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.SendMessage("正处理第{0}项数据", New Object() {i})
Next
End Sub
End Class
Public Class MainForm
'示例三,更新界面
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.Show(AddressOf TestUpdate, Me, LzmTW.uSystem.uWindows.uForms.ProgressFormStyle.ProgressWithNoCancel)
End Sub
Private Sub TestUpdate()
'do
For i As Integer = 0 To 1000000
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.SendMessage("正处理第{0}项数据", New Object() {i})
Me.Button1.Text = i.ToString
Next
End Sub
End Class
'示例三,更新界面
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.Show(AddressOf TestUpdate, Me, LzmTW.uSystem.uWindows.uForms.ProgressFormStyle.ProgressWithNoCancel)
End Sub
Private Sub TestUpdate()
'do
For i As Integer = 0 To 1000000
LzmTW.uSystem.uWindows.uForms.ProgressFormHelper.SendMessage("正处理第{0}项数据", New Object() {i})
Me.Button1.Text = i.ToString
Next
End Sub
End Class
所涉及的全跟线程有关。而对线程,我没能把握,所知甚浅。仅当参考参考罢。