Differenze tra le versioni di "Creare un Cronometro"
Riga 73: | Riga 73: | ||
Per realizzare un semplice cronometro che mostri l'orario attuale, comprensivo di ora, minuti, secondi, nonché di decimi, centesimi e millesimi di secondo, si può usare la funzione "Time". | Per realizzare un semplice cronometro che mostri l'orario attuale, comprensivo di ora, minuti, secondi, nonché di decimi, centesimi e millesimi di secondo, si può usare la funzione "Time". | ||
<BR>Mostriamo un esempio in ambiente grafico, nel quale l'orario corrente sarà mostrato nell'intestazione di una finestra: | <BR>Mostriamo un esempio in ambiente grafico, nel quale l'orario corrente sarà mostrato nell'intestazione di una finestra: | ||
− | + | Public Sub Button1_Click() | |
Do | Do | ||
− | Me.Caption = Format(Time, "hh:nn:ss.uuu") <SUP><FONT color=gray>'</font>[[[#Note| | + | Me.Caption = Format(Time, "hh:nn:ss.uuu") <SUP><FONT color=gray>'</font>[[[#Note|nota 1]]]</sup> |
Wait 0.001 | Wait 0.001 | ||
Loop | Loop | ||
− | + | End | |
Volendo, anziché usare un ciclo, sarà possibile usare anche la Classe "Timer". | Volendo, anziché usare un ciclo, sarà possibile usare anche la Classe "Timer". | ||
Versione attuale delle 07:55, 1 lug 2024
Indice
Creare un cronometro all'interno di un ciclo che mostri il tempo trascorso dall'avvio del ciclo
Usando la Classe Timer
In questo esempio si ha un Cronometro adatto a visualizzare il tempo trascorso dall'avvio del programma.
Si farà uso della Classe "Timer".
Private Timer1 As Timer Private tempo As Date Public Sub Button1_Click() With Timer1 .Delay = 1 .Start End With ' Assegna l'orario di questo istante: tempo = Time End Public Sub Timer1_Timer() Write "\r" & Format(CDate(Time - tempo), "hh:nn:ss.uuu") End Public Sub Application_Read() ' Cliccando sul tasto "Invio" della tastiera, si solleva questo Evento Timer1.Stop ' Consente di terminare il programma nel caso vi sia la subroutine "Application_Read()": Quit End
Usando un ciclo
In quest'altro esempio si farà uso del ciclo "While...Wend".
Mostriamo un esempio a riga di comando, nel quale, premendo il tasto "Invio" sulla tastiera, si determinerà l'uscita dal ciclo:
Private bo As Boolean Public Sub Main() Dim tm As Date ' Prende l'orario nel momento dell'avvio del programma: tm = Now While Not bo ' La funzione "DateDiff()" passa alla funzione "Time()" la differenza, espressa in millisecondi, tra il corrente orario e quello memorizzato all'avvio del programma. ' La funzione "Time()" passa alla funzione "Write" un valore temporale, consentendo anche di mostrare i millisecondi. Write "\r" & Time(0, 0, 0, DateDiff(tm, Now, gb.Millisecond)) Flush Wait 0.01 Wend ' Consente di terminare il programma nel caso vi sia la subroutine "Application_Read()": Quit End Public Sub Application_Read() ' Cliccando sul tasto "Invio" della tastiera, si solleva questo Evento bo = True End
Cronometro che mostra l'orario corrente, usando la funzione "Time"
Per realizzare un semplice cronometro che mostri l'orario attuale, comprensivo di ora, minuti, secondi, nonché di decimi, centesimi e millesimi di secondo, si può usare la funzione "Time".
Mostriamo un esempio in ambiente grafico, nel quale l'orario corrente sarà mostrato nell'intestazione di una finestra:
Public Sub Button1_Click() Do Me.Caption = Format(Time, "hh:nn:ss.uuu") '[nota 1] Wait 0.001 Loop End
Volendo, anziché usare un ciclo, sarà possibile usare anche la Classe "Timer".
Note
[1] Questo tipo di formattazione del tempo restituisce:
- hh = ora;
- nn = minuti;
- ss = secondi;
- uuu = millesimi di secondo.