Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Timer
venerdì 19 ottobre 2007 - 11.26
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
fax84
Profilo
| Newbie
6
messaggi | Data Invio:
ven 19 ott 2007 - 11:26
ciao a tutti,
volevo fare questa procedura vb in c#
dim myTime as single
myTime = Timer
if (Timer - myTime) > 2 then
mi serve per verificare che sia trascorso un determinato lasso di tempo prima di fare altre operazioni
Grazie a tutti
alextyx
Profilo
| Expert
668
messaggi | Data Invio:
ven 19 ott 2007 - 14:14
Non so se l'avete in C# (in VB c'è), ma un attesa prima di fare altre operazioni, potresti ottenerla col metodo threading.sleep, che ti congela il thread corrente fino a che non è trascorso un certo numero di millesimi di secondo che gli passi come argomento.
fax84
Profilo
| Newbie
6
messaggi | Data Invio:
ven 19 ott 2007 - 14:23
no la sleep, blocca tutte le risorse.. è improponibile....
alextyx
Profilo
| Expert
668
messaggi | Data Invio:
ven 19 ott 2007 - 14:49
Allora puoi salvare un certo istante in una variabie di tipo date e poi, ad intervalli adeguati, controllare se il metodo .now ti restituisce un qualcosa che, sottraendovi l'istante memorizzato, ti dà un intervallo maggiore o uguale al tempo che devi aspettare. Se sì, saprai che il lasso di tempo è trascorso e prenderai le decisioni conseguenti.
fax84
Profilo
| Newbie
6
messaggi | Data Invio:
ven 19 ott 2007 - 15:10
risolto utilizzando lo la classe stopwatch..
Grazie
alextyx
Profilo
| Expert
668
messaggi | Data Invio:
ven 19 ott 2007 - 15:52
Non l'avevo mai usata, ma ho dato un'occhiata e direi che hai ragione, mi sembra la classe giusta!
fax84
Profilo
| Newbie
6
messaggi | Data Invio:
ven 19 ott 2007 - 16:02
utilizzata in questo modo.
stopwatch t = new stopwatch();
t.start();
if (t.elapsed.seconds> 2)
{
.......
}
t.stop
l'unico cosa che vorrò è che posso controllare fino a seconds = 59.....
ma poi sarà un problema di conversioni immagino.
Grazie
alextyx
Profilo
| Expert
668
messaggi | Data Invio:
ven 19 ott 2007 - 16:29
Se usi un codice tipo questo:
Me.TextBox1.Text = (SW.ElapsedMilliseconds / 1000).ToString
SW.Reset()
SW.Start()
che ho messo in un pulsante e che mi dice quanti secondi sono passati dalla cliccata precedente, non hai alcun limite pratico, in quanto ti vengono restituiti i millisecondi trascorsi sottoforma di long (2^64)!!!
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !