Restzeit ausrechnen



  • hallochen

    ne frage, jemand ne idee wie ich restzeit ausrechne in
    Y : M : D : H : M : S ?

    ich hol die zeit mit CTime::GetYear() bis CTime::GetSecond()
    und ich hab hier etwas geschrieben das ueber den timer eine aktion an einer manuell angegebenen zeit ausloest

    die zeit kann bis ins jahr gehen

    wie kann ich nu sagen

    restzeit = 1Year 0Month 0Days 0H 0Min 0Sec
    restzeit = 0Year 11Month 30Days 23H 59Min 59Sec
    restzeit = 0Year 11Month 30Days 23H 59Min 59Sec
    so moechte ich gern die restzeit laufen lassen, stell mir das sehr kompliziert vor, da man evtl auftretende schaltjahre beachten muss, monatslaenge dann factor 60, 24, 12

    gibts da eine fertige funktion oder hat schonmal jemand sowas geschrieben ?



  • Ich verstehe nicht so ganz, was Du willst. Aber vielleicht solltest Du Dir mal CTimeSpan anschauen!?



  • ob diese funktion das macht was ich brauch hab ich bisher nicht rausgefunden

    es geht einfach darum, ich hab die aktuelle zeit in yahr, monat, tag, stunde, minute, sekunde

    dann kann man einstellen wann etwas passieren soll - als beispiel:

    Actualy:
    Date: 10.09.06
    Time: 10.04.33
    Action on:
    Date: 23.05.07
    Time: 11.55.00

    nu will ich sagen
    restzeit:
    X Jahre, X Monate, X Tage
    X Stunden, X Minuten, X Sekunden

    und diese restzeitanzeige soll im sekundentakt rueckwaerts laufen
    und da ist halt das problem - wie berechne ich diese restzeit /=



  • Dann mußt du im Sekundentakt die Zeitdifferenz zwischen "jetzt" und deiner Endezeit ausrechnen und ausgeben:

    CTime now, end = CTime(2007,1,1,0,0,0);//Endzeit ist Neujahr 2007
    while(1)
    {
      now = CTime::GetCurrentTime();
      CTimeSpan delta = ende - now;
      //delta auswerten
    }
    

    Google: site:msdn.microsoft.com CTime


Anmelden zum Antworten