6
我建了一个进度条类,是用我自己的进度for循环。这里的进度条类的代码:
Public Class frmProgress
Private Sub frmProgress_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
progressBar.Minimum = 0
End Sub
Public Sub ProgressBarSetup(ByRef Maximum As Integer, ByRef Title As String)
progressBar.Maximum = Maximum
progressBar.Value = 0
Me.Text = Title
Me.Show()
End Sub
Public Sub IncProg()
progressBar.Value += 1
Application.DoEvents()
If progressBar.Value = progressBar.Maximum Then
Me.Close()
End If
End Sub
End Class
这是我会怎么用它在一个for循环:
Dim pb As New ProgressBar
pb.ProgressBarSetup(5000, "Test")
For i As Integer = 0 To 5000 - 1
pb.IncProg()
Next
问题是一个视觉问题。它完成高达70-85%的完整进度条,然后关闭。关闭时,进度条的值和最大值是相等的,但该条只能填充到其长度的四分之三左右。
我尝试使用progressBar.Refresh()而不是Application.DoEvents(),但它减慢了很多进度 - 并且仍然给出了相同的结果。
是否有任何其他方法来实现更好的视觉吸引力进度栏?
好吧我会尝试。是的,我忘了把5000-1:p这只是一个例子。谢谢!我现在就去试试 – Alex
完美。这样可行!优秀。只要网站允许,我会尽快接受你的回答:)非常感谢! – Alex
谢谢!这使我疯了,我把它设置为50(%),它只会上升到1/3 ... – Sebastian