Ajouter un commentaire

satriano
Ajouter un objet

Bonjour

J'ai sur le form 2 imageboxen (img1 et img2)
1 timer
1 commbutt (cmd)

Si je presse sur le commbutt img1 (sprite) se met en mouvement pour
rejoindre img2 (finalsprite).
Ok

Je voudrais maintenant ajouter encore 10 img(x) sur le form, car je voudrai che en pressant cmd le sprite va simplement passer sur toutes les images et pui se arreter sur la derniere.

comment faire?Pouvez-vous m'ameliorer le code pour obtenir ca?

merci
satriano


Dim sprite As Image, finalSprite As Image 

Private Sub MoveSprite(start As Boolean) 


Static iniLeft As Integer, iniTop As Integer, endLeft As Integer, endTop As Integer 
Static orizDir As Integer, vertDir As Integer, leftStep As Integer, topStep As Integer 
Static firstGo As Boolean 

If start Then 
iniLeft = sprite.Left 
iniTop = sprite.Top 
endLeft = finalSprite.Left 
endTop = finalSprite.Top 
orizDir = Sgn(endLeft - iniLeft) 
vertDir = Sgn(endTop - iniTop) 
leftStep = 20 
topStep = Abs(iniTop - endTop) \ (Abs(iniLeft - endLeft) \ leftStep) 
firstGo = True 
 
sprite.Left = sprite.Left + leftStep * orizDir 
sprite.Top = sprite.Top + topStep * vertDir 
' timer attivé
Timer.Enabled = True 

Else 

 
sprite.Left = sprite.Left + leftStep * orizDir 
sprite.Top = sprite.Top + topStep * vertDir 

If firstGo Then 
si on arrive sur img2 (finasprite) 
If sprite.Left >= endLeft Then 
‘fin du voyage
 firstGo = False 
End If 

Else 
If sprite.Left <= iniLeft Then 
' le sprite s'arrete ici
Timer.Enabled = False 
End If 

End If 

End If 

End Sub 

Private Sub cmd_Click() 
Set sprite = img1 
Set finalSprite = img2 
MoveSprite True 
End Sub 

Private Sub Timer_Timer() 
MoveSprite False 
End Sub

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
 Y   Y   SSS   N   N  EEEE  III 
Y Y S NN N E I
Y SSS N N N EEE I
Y S N NN E I
Y SSSS N N EEEE III