Timer erstellen

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Timer erstellen

    Hallo Community,

    ich stehe derzeit vor folgendem Problem. Ich möchte gerne ein Label erstellen welches von 21 Minuten sekündlich runterzählt.
    Mir ist bewusst dass ich mit einem Timer arbeiten muss, nur wie programmiere ich es, dass der Labeltext sich sekündlich um eine Sekunde ändert?
    Freue mich auf eine schnelle und hilfreiche Antwort.


    MfG
    Maurice
    Globale Integer Variable deklarieren. Timer Tic Intervall auf einen Sekunde stellen. Im Tic Event dann die Integer Variable um eins verringern und im Label anzeigen. Wenn die Variable auf 0 steht den Timer stoppen.
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen
    Danke, ich habe es geschafft, dass der mir nun die Zeit runterzählt.

    Problem besteht jetzt nur noch, wie schaffe ich es das er mir nur die Minuten und Sekunden anzeigt und nicht die Stunden noch?
    Derzeit habe ich es folgender Weise programmiert

    VB.NET-Quellcode

    1. Dim t1 As DateTime
    2. Dim tn1 As Timespan
    3. Private Sub btimerstart1_Click(sender As Object, e As EventArgs) Handles btimerstart1.Click
    4. Timer1.Start()
    5. lshowtimer1.Text = "21:00"
    6. t1 = TimeOfDay.AddMinutes(20)
    7. End Sub
    8. Private Sub btimerstopp1_Click(sender As Object, e As EventArgs) Handles btimerstopp1.Click
    9. Timer1.Stop()
    10. lshowtimer1.Text = "00:00"
    11. End Sub
    12. Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
    13. tn1 = t1 - TimeOfDay
    14. lshowtimer1.Text = tn1.ToString
    15. End Sub
    @Maurice Willkommen im Forum. :thumbup:
    Du musst hier einen TimeSpan formatieren, sdas sieht so aus:

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim t1 As DateTime
    3. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    4. t1 = DateTime.Now.AddMinutes(20)
    5. Timer1.Start()
    6. End Sub
    7. Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
    8. Label1.Text = (t1 - DateTime.Now).ToString("hh\:mm\:ss")
    9. End Sub
    10. End Class
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!