Quand une image touche une autre

Résolu
Utilisateur anonyme - 3 mai 2008 à 01:45
 Utilisateur anonyme - 3 mai 2008 à 15:54
Bonsoir, même en cherchant sur le site je ne trouve pas de sources avec le code que je voudrais... Ce que je voudrais c'est que admeton il y a 2 images. Picture1 et picture2. Picture2 et picture1 sont à un point sur la form entourer de 4 lignes qu'ils ne peuvent franchir sinon une action se deroule, je controle picture1 avec les flèches (pour les flèches je sais faire), si je touche picture2 avec pictuve1 alors il se passe l'action X. Comment je dois faire? (La position de picture2 peux varier pour info).

xD on ma dit plusieurs fois sur le forum que je m'expliquer mal, donc pour resumer je voudrais savoir comment faire pour qu'une action se déroule lorsque picture1 ou 2 touche une des 4 ligne et comment faire pour qu'une action se déroule quand picture1 touche picture2.

Voila merci beaucoup

-----------------------------------
|     Longue vie à Vbfrance! :D     |
-----------------------------------

6 réponses

jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
3 mai 2008 à 15:24
Ben...

La picturebox A touche par exemple la picturebox B (entre autres) si :

- sa propriété left + sa largeur est >= à la propriété left de la picturebox B et <= à celle de la picturebox B + la largeur de la picturebox B et que (dans le même temps)
- sa propriété top + sa hauteur est >= à la propriété top de la picturebox B et <= à celle de la picturebox B + la hauteur de la picturebox B

Une méthode parmi d'autres !
3
Utilisateur anonyme
3 mai 2008 à 15:54
Donc merci beaucoup jmfmarques, c'est bon m'en suis sorti, voila ce que j'en est tiré.

If Image1.Left + 360 >= Image2.Left And Image1.Left <= Image2.Left + 360 And Image1.Top + 300 >= Image2.Top And Image1.Top <= Image2.Top + 300 Then
MsgBox ("Touché")
End If

Merci

-----------------------------------
|     Longue vie à Vbfrance! :D     |
-----------------------------------
3
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
3 mai 2008 à 14:51
Bonjour,

Si tu parles uniquement de la collision d'une picturebox avec une autre, c'est une chose (relativement facile à gérer)

Si tu parles par contre de la collision d'une image (région) contenue dfans une picturebox avec une image (région également) contenue dans l'autre picturebox, c'est une toute autre paire de manches et mille fois plus complexe...

De quelle collision parles-tu donc ?
0
Utilisateur anonyme
3 mai 2008 à 15:16
Non juste une collision d'une picturebox avec une autre.
-----------------------------------
|     Longue vie à Vbfrance! :D     |
-----------------------------------
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
3 mai 2008 à 15:39
Merci, j'ai fais ça:

If Image1.Left <= Image2.Left And Image1.Left >= Image2.Left And Image1.Top >= Image2.Top And Image1.Top <= Image2.Top Then
MsgBox ("Touché")
End If

Mais ça ne marche pas, c'est normal? j'insère ce code dans la partie deplacement avec les flèches de l'image1

-----------------------------------
|     Longue vie à Vbfrance! :D     |
-----------------------------------
0
Utilisateur anonyme
3 mai 2008 à 15:49
Ha ok j'ai trouver mon erreur, jvous tien au courant si j'y arrive, Merci

-----------------------------------
|     Longue vie à Vbfrance! :D     |
-----------------------------------
0
Rejoignez-nous