Maison >développement back-end >C++ >Comment dessiner des rectangles aux coordonnées de la souris à l'aide de l'événement Paint C# ?
Utilisation de l'événement Paint pour dessiner des formes aux coordonnées de la souris
Lors du développement d'applications GUI, il est souvent nécessaire de dessiner des formes sur l'écran. Une façon de procéder consiste à utiliser l'événement Paint, qui est déclenché lorsqu'une partie de la surface du contrôle doit être redessinée.
Dessiner un rectangle
Dans le exemple de code fourni, le but est de dessiner un rectangle aux coordonnées du pointeur de la souris. Pour y parvenir, la méthode DrawRect() est utilisée. Cette méthode prend les coordonnées de la souris et l'objet PaintEventArgs comme arguments.
Modification du code
Pour inclure les coordonnées de la souris dans l'événement Paint, le code doit être modifié comme suit :
Ajoutez l'argument des MouseCoordonnées au PaintEvent :
private void Form1_Paint(object sender, PaintEventArgs e, Point mouseCoordinates) { }
Appelez la fonction de dessin:
Dans le gestionnaire d'événements Paint, appelez la méthode DrawRect() avec les coordonnées de souris fournies et le Objet PaintEventArgs :
this.DrawRect(e, mouseCoordinates.X, mouseCoordinates.Y);
Terminé Code
Le code complet après modifications :
using System; using System.Drawing; using System.Windows.Forms; public partial class Form1 : Form { public void Form1_MouseMove(object sender, MouseEventArgs e) { int x = e.X; int y = e.Y; Point mouseCoord = new Point(x, y); } private void Form1_Paint(object sender, PaintEventArgs e, Point mouseCoord) { this.DrawRect(e, mouseCoord.X, mouseCoord.Y); } public void DrawRect(PaintEventArgs e, int x, int y) { Graphics gr = e.Graphics; Pen pen = new Pen(Color.Azure, 4); Rectangle rect = new Rectangle(0, 0, x, y); gr.DrawRectangle(pen, rect); } }
Considérations supplémentaires
Lorsque vous dessinez sur la surface d'un contrôle, utilisez toujours l'outil Paint événement ou remplacer la méthode OnPaint. Ne stockez pas l’objet Graphics, car il devient invalide lorsque le contrôle est repeint. Utilisez plutôt l'objet Graphics fourni par l'objet PaintEventArgs.
Les ressources supplémentaires pour dessiner des formes en C# incluent :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!