Oggetti scorrevoli

Da Gambas-it.org - Wikipedia.

Per far scorrere un Oggetto grafico, ad esempio un Button sul Form, si potrà adottare il seguente codice. Si farà uso anche di un Timer. [nota 1]

Facciamo scorrere l'Oggetto grafico da destra verso sinistra:

Private c As Short


Public Sub Form_Open()

' Fa partire l'Oggetto grafico dall'esterno a destra del Form:
 c = FMain.W

End


Public Sub Button1_Click()

 With Timer1
' Imposta la velocità di scorrimento dell'Oggetto grafico:
   .Delay = 50
   .Start
 End With
 
End


Public Sub Timer1_Timer()

 Button1.X = c

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

' Se l'Oggetto grafico è 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()

' Fa partire l'Oggetto grafico dall'esterno a sinistra del Form:
 c = Button1.W * -1

End


Public Sub Button1_Click()

 With Timer1
' Imposta la velocità di scorrimento dell'Oggetto grafico:
   .Delay = 50
   .Start
 End With
 
End


Public Sub Timer1_Timer()

 Button1.X = c

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

' Se l'Oggetto grafico è 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 grafico dall'alto in basso e viceversa:

Private c As Short
Private h As Short


Public Sub Form_Open()

 With Me
   .Height = Desktop.Height  
   .Width = Desktop.Width
 End With

 With Timer1
   .Delay = 3
   .Start
 End With

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


Note

[1] Vedere anche questa pagina: Immagine scorrevole