진행률 표시 줄이 채워지고 StartTime에 도달하면 진행률 표시 줄과 % 작업을 나타내는 레이블이 모두 표시됩니다. 다른 버튼이 "STOP"이라고 말하도록 할 수 없습니다. Dim Timer가 현재 기능 외부에서 전혀 호출 할 수 없습니다.
중지에 대한 제안을 찾고 있습니다. 나는 그것을 포함하도록 시도했다 If
ProgressBar1.Value = Maximum then Timer.Stop() End if
그러나 타이머는 계속 똑딱 거리며 멈추지 않을 것입니다.
Imports System.Threading
Imports System.Windows.Threading.DispatcherTimer
Imports System.Timers
Imports System.Math
Class MainWindow
Private Sub Rectangle_MouseLeftButtonDown(sender As Object, e As MouseButtonEventArgs)
Me.DragMove()
End Sub
Private Sub button_Click(sender As Object, e As RoutedEventArgs)
Me.Close()
End Sub
Private Sub ext_button_Click(sender As Object, e As RoutedEventArgs) Handles ext_button.Click
Me.Close()
End Sub
Private Sub Window_Loaded(sender As Object, e As RoutedEventArgs)
Dim dispatcherTimer = New Threading.DispatcherTimer()
End Sub
Private Sub Timer_Tick(ByVal sender As Object, ByVal e As EventArgs)
Dim StartTime = (Convert.ToInt32(TextBoxHour1.Text) * 3600 + Convert.ToInt32(TextBoxMinute1.Text) * 60 + Convert.ToInt32(TextBoxSecond1.Text))
LabelST.Content = "Starting Seconds: " + Convert.ToString(StartTime)
LabelST2.Content = ProgressBar1.Value
ProgressBar1.Value = ProgressBar1.Value + 1
Dim percent As Int32 = Convert.ToString(ProgressBar1.Value / StartTime * 100)
LabelPercent1.Content = Convert.ToString(Math.Floor(percent)) + "%"
' Forcing the CommandManager to raise the RequerySuggested event
CommandManager.InvalidateRequerySuggested()
End Sub
Private Sub ButtonStart_Click(sender As Object, e As RoutedEventArgs) Handles ButtonStart.Click
Dim Timer = New Threading.DispatcherTimer()
Dim StartTime = (Convert.ToInt32(TextBoxHour1.Text) * 3600 + Convert.ToInt32(TextBoxMinute1.Text) * 60 + Convert.ToInt32(TextBoxSecond1.Text))
AddHandler Timer.Tick, AddressOf Timer_Tick
Timer.Interval = New TimeSpan(0, 0, 1)
If ButtonStart.Content = "START" Then
ProgressBar1.Maximum = StartTime
Timer.Start()
LabelPercent1.Content = (StartTime / 100)
End If
End Sub
Sub ButtonStart_Copy_Click(sender As Object, e As RoutedEventArgs) Handles ButtonStart_Copy.Click
End Sub
End Class
IsTimerRunning
boolean 유형 의 전역 필드 를 만들고 시작 버튼을 클릭하면 true로 설정하고 중지 버튼을 클릭하면 false로 설정합니다. 타이머 틱 콜백 메서드가이 필드를 확인하도록하고 참일 때 정상적인 작업을 수행하고 그렇지 않으면 타이머를 중지합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다