Я надеялся на некоторую помощь с моим фоном, поскольку я просто не могу заставить его работать. В основном у меня есть рабочий стол, который выполняет несколько задач, но я пытаюсь реализовать индикатор выполнения и метку. Я собираюсь установить максимальное значение индикатора выполнения на 10, а затем обновить его, когда я перемещаюсь с каждой задачей, также я думаю о метке с индикатором выполнения, который отображает ход, т. Е.Индикатор прогресса с фоном рабочего
Pb value = 2
20% completed
Pb value = 6
60% completed
и так далее.
До сих пор у меня это было для кодирования.
Обновление * Спасибо lars за вашу помощь.
Так что, просто быстрый вопрос: будет ли подобное событие работать так?
Private Sub BGWorker_DoWork(ByVal sender As Object, _
ByVal e As DoWorkEventArgs) _
Handles BGWorker.DoWork
For i as Integer = 1 to 2
'My task code 1
BGWorker.ReportProgress(i)
Next
For i as Integer = 3 to 4
'My task code 2
BGWorker.ReportProgress(i)
Next
For i as Integer = 5 to 6
'My task code 3
BGWorker.ReportProgress(i)
Next
For i as Integer = 7 to 8
'My task code 4
BGWorker.ReportProgress(i)
Next
For i as Integer = 9 to 10
'My task code 5
BGWorker.ReportProgress(i)
Next
End Sub
Ларс вы можете увидеть мой ответ? – JackSparrow
@JackSparrow Я посмотрел ваш код, и да, это сработает. Предполагая, что эти «задачи» занимают более 50 мс. Событие 'ProgressChanged' - это место, где вы обновляете свой графический интерфейс, поэтому индикатор выполнения обновляется там. Также вы можете обновить свой ярлык: 'Me.Label1.Text = String.Format (" {0}% ", e.ProgressPercentage * 10)'. Используйте событие «RunWorkerCompleted», чтобы вернуть все значение 0 и сбросить метку до «Завершено» или что-то в этом роде. – LarsTech
Привет, Ларс, извините, я думал, что Me.Label1.Text = String.Format ("{0}%", e.ProgressPercentage * 10) войдет в событие Do Work под BGWorker.ReportProgress (i) и NOT в прогресс изменился? – JackSparrow