Bonjour à tous,

Je suis actuellement en train de développer un logiciel où je dois faire déplacer des images. Celle-ci sont placées dans des pictureBox. Elles doivent se déplacer aléatoirement sur l'écran (en horizontal, vertical, diagonal). L'image se déplace bien mais lorsqu'elle tape sur l'un des 4 coins de ma richTextBox, le déplacement ne se fait plus correctement. Par exemple si elle tape en haut à droite, l'image repart sur la gauche en horizontal puis sort de l'écran où alors repart sur la droite toujours en horizontal.
Je vous montre un peu le code que j'ai utilisé :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 
// Déplacement de l'image en "diagonale" (vers le bas et la droite)
            Image_Choisie.Top = Image_Choisie.Top + Vertical;
            Image_Choisie.Left = Image_Choisie.Left + Horizontal1;
 
            //-----------------------------------------
            //On teste l'endroit où l'image a tapé
            //-----------------------------------------
            // Si l'image touche le côte gauche de la feuille :
            // on repart vers la droite...
            if (Image_Choisie.Left < 0)
                Horizontal1 = -1 * Horizontal1;
            else
            {
                // Si l'image touche le côte droit de la feuille :
                //on repart vers la gauche...
                if (Image_Choisie.Left + Image_Choisie.Width + 20 > richTextBox1.Width)
                    Horizontal1 = -1 * Horizontal1;
                else
                {
 
                    // Si l'image touche le haut de la feuille : 
                    // on repart vers le bas
                    if (Image_Choisie.Top < 100)
                    {
                        Vertical = -1 * Vertical;
                    }
                    else
                    {
                        // Si l'image touche le bas de la feuille : 
                        // on repart vers le haut
                        if (Image_Choisie.Top + Image_Choisie.Height > 510)
                        {
                            Vertical = -1 * Vertical;
                        }
                    }
                }
            }
J'aurais voulu savoir si mon code était correcte ou si vous saviez comment je peux déplacer une image plus simplement et surtout un déplacement qui marche ^^
Je vous remercie d'avance pour votre aide.