Differenze tra le versioni di "Temporizzare una funzione o un evento"

Da Gambas-it.org - Wikipedia.
Riga 19: Riga 19:
 
  '''Public''' Sub Timer1_Timer()   
 
  '''Public''' Sub Timer1_Timer()   
 
   
 
   
  <FONT color=#006400>' ''Se la data e l'orario del computer sono uguali all'orario scritto nel primo "TextBox"...''</font>
+
  <FONT color=#006400>' ''Se l'orario del computer è uguale all'orario scritto nel primo "TextBox"...''</font>
       If Str(Now) = TextBox1.Text Then
+
       If Str(Time) = TextBox1.Text Then
 
  <FONT color=#006400>' ''allora facciamo lanciare il programma "Gedit",''
 
  <FONT color=#006400>' ''allora facciamo lanciare il programma "Gedit",''
 
  ' ''e ne gestiamo il processo con un'apposita variabile:''</font>
 
  ' ''e ne gestiamo il processo con un'apposita variabile:''</font>

Versione delle 03:02, 19 dic 2012

Il caso è quello in cui intendiamo prevedere l'attivazione di una funzione o in generale di un evento ad un certo orario.


Poniamo, come esempio, di voler lanciare ad un certo orario il programma Gedit, e ad un altro orario farlo chiudere. Inseriremo a tal fine, per semplicità, due TextBox. Nel primo TextBox inseriremo l'orario di apertura del programma Gedit, mentre nel secondo l'orario in cui dovrà essere chiuso. In entrambi i TextBox si inserirà l'orario con il seguente formato: hh:mm:ss .

Private hp As Process


Public Sub Button1_Click()

   With Timer1  
' Attiviamo il Timer ogni secondo, per vedere l'orario del computer:
     .Start  
     .Delay = 1000  
   End With  
     
End
     

Public Sub Timer1_Timer()  

' Se l'orario del computer è uguale all'orario scritto nel primo "TextBox"...
     If Str(Time) = TextBox1.Text Then
' allora facciamo lanciare il programma "Gedit",
' e ne gestiamo il processo con un'apposita variabile:
       hp = Shell "gedit"
     Endif
   

' Se l'orario del computer è uguale a quello presente nel secondo "TextBox"...
     If Str(Time) = TextBox2.Text Then
' ...allora stronchiamo il processo:
       hp.Kill
' Blocchiamo quindi anche il "Timer":
       Timer1.Stop
     Endif
          
End