Countdown aus Uhrzeit erstellen

  • VB6
  • .NET 4.5

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

    Countdown aus Uhrzeit erstellen

    Hallo,

    benötige Hilfe. Wer kann mir folgende Code-Möglichkeit für folgende Anwendung mitteilen:

    Es wird in ein Textfeld eine Uhrzeit eingegeben z.B " 20:15 Uhr"
    Diese Zeit wird mit Klick auf einen Button mit der Systemuhr (echte Uhrzeit) verglichen und in Echtzeit (Counter) die Restzeit mit Sekunden runtergezählt.
    Diese Restzeit soll dann über ein Label angezeigt werden.


    Ich komme damit überhaupt nicht klar. Ich möchte mit dieser Funktion die verbleibende Zeit anzeigen lassen.

    Danke für jede Hilfe.

    Grüße


    Stefan
    @kinostefan Die größte Schwierigkeit ist die Erfassung der Alarmwerte für Stunde und Minute aus Deinem Textfeld. Da braucht es eine sinnvolle Überprüfung der eingegebenen Werte, sonst kommt Mus dabei raus, z.B. wenn der Benutzer "bliblablubb" statt "20:15 Uhr" eingibt. Da wäre ein DateTimePicker mit passender Formateigenschaft (z.B. Time oder korrekt eingestelltem Customwert) statt einer Textbox definitiv sinnvoller. Aber sonst recht einfach (vorausgesetzt man stellt einen Alarm für den selben Tag ein):

    Zum Anfang des heutigen Tages die Stunden, Minuten, ggf. die Sekunden des Alarms dazurechnen und die Zeitdifferenz in ganzen Sekunden zurückgeben, fertig ist der Lack.

    VB.NET-Quellcode

    1. Private Function SekundenBisZumAlarm(fp_Alarmstunde As Integer, fp_Alarmminute As Integer, Optional fp_Alarmsekunde As Integer = 0) As Integer
    2. Return CInt((Now.Date.AddHours(fp_Alarmstunde).AddMinutes(fp_Alarmminute).AddSeconds(fp_Alarmsekunde) - Now).TotalSeconds)
    3. End Function
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Häufig von mir verwendete Abkürzungen: CEs = control elements (Labels, Buttons, DGVs, ...) und tDS (typisiertes DataSet)
    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht in den Spekulatiusmodus gehen.
    @VaporiZed WHAT :?:
    @kinostefan Erarbeite Dir zunächst den Unterschied zwischen 12 Uhr und 12 Stunden.
    Was ist ein Zeitpunkt und was ist eine Zeitspanne?
    Nutze die DateTime- und die TimeSpan-Struktur. Mit beiden kannst Du unmittelbar rechnen und Dir die Ergebnisse in Deiner bevorzugten Einheit ausgeben lassen.
    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).
    VB-Fragen über PN / Konversation werden ignoriert!