Le immagini

sono utilizzate per visualizzare le cifre e il lampeggio di un orologio digitale

PATH=Program.Directory ' carica le immagini
For i=0 To 9
CIFRE[i]=ImageList.LoadImage(PATH + "/" + i + ".gif")
EndFor
DUEPUNTI=ImageList.LoadImage(PATH + "/punti.gif")
NULLO =ImageList.LoadImage(PATH + "/null.gif")
LAMPO =1
DIMX =ImageList.GetWidthOfImage (DUEPUNTI) ' dimensioni, distanze, ...
DIMY =ImageList.GetHeightOfImage(DUEPUNTI)
SPAZIO =20
POSX[1]=SPAZIO
POSY =SPAZIO
For i=2 To 8
POSX[i]=POSX[i-1]+DIMX
EndFor
GraphicsWindow.Title ="Orologio digitale" ' finestra grafica
GraphicsWindow.BackgroundColor="Black"
GraphicsWindow.Width =8*DIMX+2*SPAZIO
GraphicsWindow.Height = DIMY+2*SPAZIO
Timer.Interval=250 ' timer
Timer.Tick =AGGIORNA
Sub AGGIORNA
hh=Clock.Hour ' che ore sono?
mm=Clock.Minute
ss=Clock.Second
h1=Math.Floor(hh/10) ' le singole cifre?
h2=Math.Remainder(hh, 10)
m1=Math.Floor(mm/10)
m2=Math.Remainder(mm, 10)
s1=Math.Floor(ss/10)
s2=Math.Remainder(ss, 10)
GraphicsWindow.DrawImage(CIFRE[h1],POSX[1],POSY) ' visualizza le cifre
GraphicsWindow.DrawImage(CIFRE[h2],POSX[2],POSY)
GraphicsWindow.DrawImage(CIFRE[m1],POSX[4],POSY)
GraphicsWindow.DrawImage(CIFRE[m2],POSX[5],POSY)
GraphicsWindow.DrawImage(CIFRE[s1],POSX[7],POSY)
GraphicsWindow.DrawImage(CIFRE[s2],POSX[8],POSY)
If LAMPO = 1 Then ' lampeggio dei due punti
LAMPO=0
GraphicsWindow.DrawImage(DUEPUNTI,POSX[3],POSY)
GraphicsWindow.DrawImage(DUEPUNTI,POSX[6],POSY)
Else
LAMPO=1
GraphicsWindow.DrawImage(NULLO,POSX[3],POSY)
GraphicsWindow.DrawImage(NULLO,POSX[6],POSY)
EndIf
EndSub
Se consideriamo i secondi passati dall’avvio dell’applicazione
... INIZIO=Clock.ElapsedMilliseconds ... ADESSO=Clock.ElapsedMilliseconds TEMPO =(ADESSO-INIZIO)/1000 TEMPO =Math.Floor(TEMPO) ...
otteniamo un cronometro

Mettendo insieme l’orologio analogico e l’orologio digitale…
