PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [c#] timer problem


beta3
2003-10-24, 19:53:55
hi

weiss jemand wie ich die uebrige zeit von nem timer z.b. in nem label anzeigen lassen kann?
ich habs schon mit der system.windows.foms, system.threading und mit der system.timers class probiert
hab grad das projekt als system.timers, da ich es so am besten finde, aber leider weiss ich ned wie ich die uebrige zeit anzeigen lassen kann

hoffentlich kann mir wer helfen

Demirug
2003-10-24, 20:09:55
Was meinst du mit "uebrige zeit"?

Einer Timer dient ja nur dazu regelmässig ein Event auszulösen

beta3
2003-10-24, 20:25:39
ja ich weiss
aber ich will einen timer fuer win programmieren, geht ja auch schon
ich will aber auch, dass die uebrige zeit bis zum alarm angezeigt wird, wie bei digiuhren oder handys
so in etwa:
5sekunden bis zuma alarm
4sekun...
3....
2...
1...
und dass soll ich nem label angezeigt werden

ich hoffe diesmal hab ich mich klar ausgedrueckt

Demirug
2003-10-24, 20:42:33
Schau dir mal die Klassen DateTime und TimeSpan an.

grakaman
2003-10-24, 23:00:48
Du kannst ja auch das Intervall auf 1000 Millisekunden stellen und bei jedem Tickereignis inkrementierst du ein int Feld und überprüfst, ob denn das mit deinem eigentlichen Intervall übereinstimmt und wenn ja, dann führe etwas aus und setze die Anzeige wieder auf 0. Andernfalls subtrahiere von deinem eigentlichen Intervall die Anzahl der Ticks und zeige die Differenz an. Somit hast du auch deinen Countdown. Allerdings meinte ich irgendwo gelesen zu haben, dass man sich nicht darauf 100% verlassen kann, dass das Timer Objekt das Tick Event auch wirklich genau zu der Zeit getriggert wird.

MfG

Demirug
2003-10-24, 23:22:03
Ja, auf Timerevents sollte man sich nie verlassen. Wenn zum Beispiel die CPU am anschlag ist kann es auch mal passieren das 2 Event zusammengefasst werden. Das einzige auf was man sich verlassen kann ist das ein Event kommt.