Il controllo Timer consente di gestire azioni collegate al trascorrere del tempo; il suo funzionamento non dipende dall'utente e può essere programmato per l'esecuzione di operazioni a intervalli regolari. Un tipico utilizzo del Timer è il controllo dell'orologio di sistema per verificare se è il momento di eseguire una qualche attività; i timer sono inoltre molto utili per altri tipi di operazioni in background.
Il controllo Timer si differenzia dai controlli esaminati finora perché, in fase di esecuzione, è invisibile; dispone di un solo evento, l'evento Timer, che viene generato quando è trascorso l'intervallo di tempo (espresso in millisecondi) specificato nella proprietà Interval. Quest'ultima può assumere valori compresi tra 0, che equivale a disattivare il timer, e 65.535, cioè poco più di un minuto.
E' buona norma impostare nella proprietà Interval un valore corrispondente a circa la metà del tempo che vogliamo trascorra effettivamente tra due eventi Timer: ad esempio, se vogliamo che l'evento Timer venga generato ogni secondo (cioè 1000 millisecondi), conviene impostare la proprietà Interval su 500, per evitare ritardi dovuti ad altre elaborazioni del computer che avvengono nello stesso momento. Un'altra proprietà importante è la proprietà Enable, che consente di stabilire o di impostare se il Timer è attivo oppure no.
Per comprende il funzionamento del controllo Timer realizzeremo un'applicazione classica, un orologio digitale. L'interfaccia, che potete scaricare facendo clic qui , è molto semplice e comprende, oltre al Timer, solo una Label.
Notate che la proprietà Interval è stata impostata su 500 millisecondi per la ragione sopra indicata. L'unica riga di codice che dobbiamo scrivere va inserita nell'evento Timer:
Private Sub Timer1_Timer()
Label1.Caption = Time
End Sub
Per recuperare l'ora di sistema è stata usata la funzione Time. Tutto qui: il programma è finito, premete F5 per osservare il suo funzionamento. Per scaricare questa applicazione fate clic qui.