Originariamente inviata da
e444
La risposta è NEGATIVA!... non funzia.
Mi sa che faccio prima a sfasciare il tutto e invece di inserire solo i secondi, metto pure i minuti e le ore...
Però non vi nascondo che questa cosa mi lascia al quanto perplesso.... trovo impossibile che non si riesca ad ottenere sta cosa....
Che il codice non funzioni è impossibile, per cui l' unica possibilità che vedo è che la "modifica" del valore della label venga erroneamente effettuata più volte "di seguito" e venga visualizzata solo l' ultima "sbagliata". Errore che potrebbe essere dovuto al fatto che "contabilizzi" il tempo nelle label.
Visto che siamo abituati a ragionare in termini di ore, minuti e secondi, mi pare regolare VISUALIZZARE il risultato in ore, minuti e secondi, ma il tempo continuerei a "contarlo" in secondi con variabili Integer. Quindi NON "contabilizzato" nelle label, ma in variabili. Per ogni label dichiarerei la relativa:
codice:
Dim TimerSxPy as Integer
Potrebbe anche essere una matrice bidimensionale, TimerSP(x,y), risparmieresti un bel pò di variabili.
Nei timers:
codice:
TimerSxPy - = 1 ' TimerSP(x,y) - = 1 se matrice
Quando aggiungi Est:
codice:
TimerSxPy + = Est 'non può non funzionare
OGNI VOLTA che si modifica un valore TimerSxPy (cioè che togli 1 o aggiungi Est):
codice:
LBTimerSxPy = String.Format("{0:00}:{1:00}:{2:00}", TimerSxPy / 3600),
Int((TimerSxPy / 60) Mod 60), TimerSxPy Mod 60))
Per visualizzare nelle label il tempo in ore, minuti e secondi. Se invece che integer le variabili fossero DateTime il codice di visualizzazione sarebbe ancora più semplice, ma la gestione un attimino più complessa.
Un codice così NON PUO' non funzionare, a meno di errori successivi di codice, come già detto.