Bonjour je suis actuellement sur mon projet pour ma deuxième année en bts IRIS et j'ai un gros soucis.
j'effectue une rotation de 45 degré sur un rectangle et j'aimerais que lorsque je clique dessus qu'il se colore en jaune.
J'ai un soucis que je ne comprend pas: lorsqu'on lance le programme, le rectangle est dessiné bien orienté mais lorsque je clique dessus il ne se colorie pas. Le rectangle en revanche se colorie lorsque je clique a la place que le rectangle occuperais sans avoir subit la rotation il se colorie. J'ai l'impression que "l'image" du rectangle subit la rotation mais pas l'objet en lui-même .
voici ma méthode de dessin :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
Point ancrage = new Point(x, y);
Matrix myMatrix = new Matrix();
myMatrix.RotateAt(45, ancrage, MatrixOrder.Append);
g.Transform = myMatrix;
rect2 = new Rectangle(x,y, dimension, dimension);
g.DrawRectangle(new Pen(Color.Black), rect2);
myMatrix.Reset();
et ma méthode de clic :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 Point point = new Point(e.X, e.Y);           
 Point ancrage = new Point(x, y);
 Matrix myMatrix = new Matrix();
 myMatrix.RotateAt(45, ancrage, MatrixOrder.Append);
 g.Transform = myMatrix;
 if ( rect2.Contains(point) && e.Button == MouseButtons.Left)
 {              
       g.FillRectangle(new SolidBrush(Color.Yellow), rect2);                
       myMatrix.Reset();                       
 }
J'espère que quelqu'un pourra m'aider, et que vous comprendrez ce que j'ai essayer d'expliquer mais même moi j'ai du mal a me l'expliquer.
Merci d'avance.