Stoppuhr in VB

hey undzwar bastel ich grade an nem proggi und würde gerne ne kleine Stoppuhr einbauen, sie soll über nen Timer gesteuert werden dessen Intervall logischerweise 1000 is. Jedoch weiß ich nun nicht wirklich weiter, man(n) soll das proggi einfach öffnen und ab dem moment zählt diese Stoppuhr dann stunden,minuten,sekunden die man das prog schon benutzt hat. Gibt es dafür direkt in vb ne funktion für?
Oder müßt ich mir dafür ne extra function schreiben?
 
Also ich hab ja 0 Ahnung von VB, aber prinzipiell könnte das so ablaufen:
Möglichkeit 1:
Du speicherst die Zeit beim starten und jede Sekunde, wenn der Timer sein Ereignis liefert vergleichst du mit der aktuellen Zeit und lässt die Differenz (in hh:mm:ss zerleget) anzeigen.
Möglichkeit 2:
Du setzt eine Variable beim starten auf 0 und jedes Mal wenn der Timer sein Ereignis liefert erhöst du die Variable um 1. Das Ergebnis lässt du entsprechend ausgeben.

(Variante 2 sollte natürlich effizienter sein)

Ich nehme mal an du weißt wie du einen Timer initialisierst und wie du in VB eine Subroutine für das Timerereignis erstellst.

Nornagest
 
hey, danke erstmal aber hab noch ne frage, was meinst du mit Subroutine .
Außerdem würde ich gerne noch wissen wie ich bei Variante 2 die zahl in hh:mm:ss zerlege? mit format(...) ?
 
Du bindest einfach ein Timer-Steuerelement ein, stellst das Interval auf zb. 1000 (= 1 Sekunde) und in der Sub-Routine vom Timer (Doppelklick auf das Timer-Steuerelement) bindest du einfach einen Code ein, der eine Globale-Variabel, die du vorher außerhalb der Timer-Routine definiert hast, immer um den Wert 1 (für eben 1 Sekunde) erhöht bzw. dir dann noch den Wert dieser Variabel auf ein Label übergibt.
 
danke root werd dort mal vorbeischauen find dort bestimmt was, und Indi jau das prizip is mir ja klar aber häts halt gern in hh:mm:ss :)
 
man könnte das ganze dann aber auch noch in industrieminuten angeben, dann wär die umrechnungszahl wieder 100.

OK ! ich halt ja schon meine klappe ;) ;) ;)
 
Das Zerlegen in hh:mm:ss geht recht leicht per "modulo" (Division mit Rest). VB hat sicherlich irgendwas womit man Ganzzahldivision machen kann. Dann würde das ca. so klappen:

volleVergangeneStunden = zeitInSek div 3600
zeitInSek = zeitInSek - vollVergangeneStunden*3600
(alternativ kann man hier auch zeitInSek auf den Divisionsrest von zeitInSek / 3600) setzen)

das ganze nochmal mit 60 für die Minuten, der Rest der dann übrigbleibt sollte kleiner als 60 sein ;)


Falls ich mich vertan hab lag das an der "Uhrzeit" (*g*), geht bestimmt auch einfacher denk ich
 
Zurück
Oben