Oggetti scorrevoli

Da Gambas-it.org - Wikipedia.

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