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