Differenze tra le versioni di "Far assumere al cursore del mouse l'aspetto dell'attesa"

Da Gambas-it.org - Wikipedia.
Riga 9: Riga 9:
 
Semplice esempio pratico:
 
Semplice esempio pratico:
 
  '''Public''' Sub Button1_Click()
 
  '''Public''' Sub Button1_Click()
 
+
 
   Dim i As Integer
 
   Dim i As Integer
 
    
 
    
  Inc Application.Busy
+
  Inc Application.Busy
    
+
  For i = 1 To 1000000
+
   Wait 3
    Print i
+
  Next
+
  Dec Application.Busy
   
+
  Dec Application.Busy
 
 
 
 
  '''End'''
 
  '''End'''
 
+
Un'altra possibilità è quella di usare le proprietà ".Wait" e ".Default" della Classe ''Mouse''.
 
 
 
 
Un'altra possibilità è quella di usare le proprietà "''.Wait''" e "''.Default''" della Classe ''Mouse''.
 
 
  '''Public''' Sub Button1_Click()
 
  '''Public''' Sub Button1_Click()
 
    
 
    
 
   Dim i As Integer
 
   Dim i As Integer
    
+
  Me.Mouse = Mouse.Wait
+
   Me.Mouse = Mouse.Wait
    
+
  For i = 1 To 1000000
+
   Wait 3
    Print i
+
  Next
+
  Me.Mouse = Mouse.Default
   
+
  Me.Mouse = Mouse.Default
 
 
 
 
  '''End'''
 
  '''End'''

Versione delle 12:53, 7 ott 2022

Sovente, quando il programma è impegnato a svolgere una lunga operazione, il cursore del mouse assume il consueto aspetto di una sorta di rotellina che gira sino a quando quella lunga operazione non termina.

Per riprodurre questo effetto grafico anche in Gambas, è possibile utilizzare in ambiente grafico la proprietà ".Busy" della Classe "Application".

In particolare la guida ufficiale on-line dice che quando la proprietà ".Busy" è impostata ad un valore maggiore di zero, il cursore del mouse assume l'aspetto di attesa (cursore "occupato") per mostrare che l'applicazione è occupata e non risponde agli eventi utente. Terminato la fase di attesa bisognerà decrementare il valore, precedentemente incrementato, della predetta proprietà ".Busy".
Se la proprietà ".Busy" è stata incrementata, non bisogna dimenticare di decrementarla, al termine della fase di attesa.


Semplice esempio pratico:

Public Sub Button1_Click()

 Dim i As Integer
 
 Inc Application.Busy

 Wait 3

 Dec Application.Busy

End

Un'altra possibilità è quella di usare le proprietà ".Wait" e ".Default" della Classe Mouse.

Public Sub Button1_Click()
 
 Dim i As Integer

 Me.Mouse = Mouse.Wait

 Wait 3

 Me.Mouse = Mouse.Default

End