Differenze tra le versioni di "Oggetti scorrevoli"

Da Gambas-it.org - Wikipedia.
Riga 27: Riga 27:
 
   
 
   
 
  <FONT color=gray>' ''La posizione dell'oggetto decrementa di volta in volta, dando così l'effetto dello scorrimento verso sinistra:''</font>
 
  <FONT color=gray>' ''La posizione dell'oggetto decrementa di volta in volta, dando così l'effetto dello scorrimento verso sinistra:''</font>
  c -= 1
+
  c -= 1
 
   
 
   
 
  <FONT color=gray>' ''Se l'oggetto è totalmente al di fuori sulla sinistra del Form, allora ricominciamo subito da capo:''</font>
 
  <FONT color=gray>' ''Se l'oggetto è totalmente al di fuori sulla sinistra del Form, allora ricominciamo subito da capo:''</font>
  If c = Button1.W * -1 Then c = FMain.W
+
  If c = Button1.W * -1 Then c = FMain.W
 
   
 
   
 
  '''End'''
 
  '''End'''
Riga 64: Riga 64:
 
   
 
   
 
  <FONT color=gray>' ''Se l'oggetto è totalmente al di fuori sulla destra del Form, allora ricominciamo subito da capo:''</font>
 
  <FONT color=gray>' ''Se l'oggetto è totalmente al di fuori sulla destra del Form, allora ricominciamo subito da capo:''</font>
  If c = FMain.W Then c = Button1.W * -1
+
  If c = FMain.W Then c = Button1.W * -1
 
   
 
   
 
  '''End'''
 
  '''End'''

Versione delle 09:07, 14 giu 2023

Per far scorrere un oggetto, ad esempio un Button sul Form, si potrà adottare il seguente codice. Si farà uso anche di un Timer.

Facciamo scorrere l'oggetto da destra verso sinistra:

Private c As Short


Public Sub Form_Open()

' Facciamo partire l'oggetto dall'esterno a destra del Form:
 c = FMain.W

End

Public Sub Button1_Click()

 With Timer1
   .Enabled = True
' Impostiamo la velocità di scorrimento dell'oggetto:
   .Delay = 50
 End With
 
End

Public Sub Timer1_Timer()

 Button1.X = c

' La posizione dell'oggetto decrementa di volta in volta, dando così l'effetto dello scorrimento verso sinistra:
 c -= 1

' Se l'oggetto è totalmente al di fuori sulla sinistra del Form, allora ricominciamo subito da capo:
 If c = Button1.W * -1 Then c = FMain.W

End


Lo scorrimento da sinistra verso destra sarà, invece, ottenuto così:

Private c As Short


Public Sub Form_Open()

' Facciamo partire l'oggetto dall'esterno a sinistra del Form:
 c = Button1.W * -1

End

Public Sub Button1_Click()

 With Timer1
   .Enabled = True
' Impostiamo la velocità di scorrimento dell'oggetto:
   .Delay = 50
 End With
 
End

Public Sub Timer1_Timer()

 Button1.X = c

' La posizione dell'oggetto aumenta di volta in volta, dando così l'effetto dello scorrimento verso destra:
 c += 1

' Se l'oggetto è totalmente al di fuori sulla destra del Form, allora ricominciamo subito da capo:
 If c = FMain.W Then c = Button1.W * -1

End


Ora facciamo scorrere un oggetto dall'alto in basso e viceversa:

Private c As Short
Private h As Short


Public Sub Form_Open()

 Me.Height = Desktop.Height  
 Me.Width = Desktop.Width  
     
 Timer1.Delay = 3
 Timer1.Start()
     
End    
     
Public Sub Timer1_Timer()  

 Button1.Y = c 
  
 If c = Desktop.Height - Button1.Height Then h = -1
 If c = 0 Then h = 1

 c += h

End