0

アプリケーションが起動した瞬間から、アプリケーションが閉じられるか、意図的に停止するまで、秒単位で増加するタイマーを開始するように、稼働時間カウンターを追加しようとしています。

現在、タイマーは最初の 1 秒をカウントしてから停止します。これは、ティック機能を理解していない可能性がありますか? タイマーに設定した間隔は、ティックサブ内のコードを更新またはループすると思いますか? (私は大幅に間違っている可能性があります)。

私は timer1 を持っていて、それを に設定し"Enabled"、間隔を"1000"1 秒に設定しました。

Timer1_Tick Subはこれを持っています:

Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
    Dim seconds, minutes, hours As Integer
    If seconds = 60 Then
        seconds = 0
        minutes = minutes + 1
    End If

    If minutes = 60 Then
        If seconds = 60 Then
            seconds = 0
            minutes = 0
            hours = hours + 1
        End If
    End If
    seconds = seconds + 1
    Label44.Text = Format(hours, "00") & "." & Format(minutes, "00") & "." & Format(seconds, "00")
End Sub

Form1_Loadが持っているTimer1.Start()

私が欠けているものを教えてください。ありがとう。

4

3 に答える 3

3

アプリケーションの稼働時間については、アプリケーションが開始された時刻と日付を記録し、ラベルを使用して時刻が記録されてからの時間差を示します。常に時を刻む時間を実行するよりもはるかに簡単です。

于 2013-10-16T09:50:05.397 に答える
1

内で変数を宣言する必要がありますForm1

Public Class Form1

    Private seconds, minutes, hours As Integer

    Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick    
        If seconds = 60 Then
            seconds = 0
            minutes = minutes + 1
        End If

        If minutes = 60 Then
            If seconds = 60 Then
                seconds = 0
                minutes = 0
                hours = hours + 1
            End If
        End If
        seconds = seconds + 1
        Label44.Text = Format(hours, "00") & "." & Format(minutes, "00") & "." & Format(seconds, "00")
    End Sub
End Class
于 2013-10-16T09:57:45.097 に答える