Découvrez comment dessiner des formes, utiliser des couleurs et rendre des images dans une application WinForms.
Windows Forms est un framework qui vous permet de créer des applications de bureau. Vous pouvez cliquer et faire glisser des composants tels que des boutons sur une interface utilisateur visuelle. Il vous aide également à créer manuellement diverses formes dans votre code.
Cet article vous montrera comment ajouter des lignes, des formes et des images à votre application. Ce didacticiel utilise Visual Studio 2019 Community Edition pour montrer des exemples.
Quelles sont les classes intégrées utilisées pour dessiner des graphiques ?
Windows Forms utilise le Langage de programmation C#. Ses classes et méthodes intégrées vous permettent de dessiner diverses formes sur un canevas Windows Form. Celles-ci incluent les classes Graphics, Pen, Color et Brush.
Classe | La description |
---|---|
Graphique | La classe Graphics vous permet de dessiner des formes et des lignes sur le canevas. Il comprend des méthodes telles que :
|
Plume | La classe Pen vous permet de spécifier les propriétés d'une pointe de "stylo" que vous pouvez utiliser pour dessiner vos formes. Vous pouvez spécifier des propriétés telles que la couleur, l'épaisseur ou le style de tiret. Les méthodes incluent :
|
Couleur | Un objet de couleur composé de valeurs R (rouge), G (vert) et B (bleu). Vous aurez besoin d'un objet de couleur pour la plupart des méthodes intégrées qui créent des formes. |
SolidBrush, HatchBrush, TextureBrush | Ces classes de pinceaux dérivent de l'interface "Brush". Ces classes vous permettent de colorier des espaces vides sur le canevas. Vous pouvez également choisir de remplir les espaces en utilisant différents motifs ou textures. Vous pouvez spécifier des propriétés telles que la couleur. |
Rectangle, Ligne, Polygone, Ellipse | Vous pouvez créer des objets basés sur ces formes et les utiliser lors de l'appel de méthodes telles que DrawRectangle(). Au lieu de passer x, y, largeur et hauteur comme arguments, vous pouvez choisir de passer un objet Rectangle existant à la place. |
Pour afficher le code source d'un exemple d'exécution du didacticiel ci-dessus, visitez le Référentiel GitHub. Vous pouvez essayer les exemples suivants une fois que vous avez créé une application Winforms.
Comment ajouter un gestionnaire d'événements Paint on Form Load
Tout d'abord, ajoutez un gestionnaire d'événements pour dessiner des formes lors du chargement du canevas.
- Ajoutez une fonction Paint pour le formulaire.
vide privé Form1_Paint (expéditeur d'objet, PaintEventArgs e)
{
// Le code va ici
} - Allez dans l'onglet Vue de conception.
- Dans la fenêtre Propriétés, sélectionnez l'icône de l'éclair pour ouvrir l'onglet "Événements".
- Dans "Paint", sous "Apparence", sélectionnez la fonction Form1_Paint. Cela exécutera la fonction lorsque vous exécuterez l'application.
Comment dessiner des lignes sur un canevas de formulaire Windows
Vous pouvez utiliser une méthode Color, Pen et la méthode DrawLine() pour tracer des lignes sur un canevas.
- Dans la fonction Form1_Paint(), créez un objet Color avec la couleur souhaitée pour la ligne. Ensuite, créez un objet Pen avec lequel tracer la ligne.
Couleur noir = Couleur. FromArgb (255, 0, 0, 0);
Pen blackPen = nouveau Pen (noir); - La méthode DrawLine() de la classe Graphics tracera une ligne à l'aide du stylo. Cela commencera à tracer une ligne d'une position x, y à une autre position x, y.
e. Graphique. DrawLine (BlackPen, 300, 200, 800, 200);
- Vous pouvez modifier les propriétés de l'objet stylo pour modifier sa largeur, son style de tiret et sa terminaison de début ou de fin.
Stylo noir. Largeur = 20 ;
Stylo noir. DashStyle = Système. Dessin. Drawing2D.DashStyle. Tiret;
Stylo noir. StartCap = Système. Dessin. Drawing2D.LineCap. FlècheAncre ;
e. Graphique. DrawLine (BlackPen, 300, 200, 800, 200); - Appuyez sur le bouton de lecture vert en haut de Visual Studio pour voir les modifications.
Comment dessiner des formes telles que des rectangles et des cercles
Vous pouvez utiliser les classes de formes pour différentes formes ou dessiner des formes manuellement sur le canevas.
- Créez un objet Couleur et Stylo comme indiqué dans les étapes précédentes. Ensuite, utilisez la méthode DrawRectangle() pour créer le rectangle. Les arguments sont les coordonnées x et y du coin supérieur gauche du rectangle, ainsi que sa largeur et sa hauteur.
Couleur rouge = Couleur. FromArgb (255, 255, 0, 0);
Pen redPen = nouveau Pen (rouge);
stylo rouge. Largeur = 5 ;
e. Graphique. DrawRectangle (redPen, 100, 100, 500, 200); - Vous pouvez également créer un rectangle à l'aide de la classe Rectangle. Tout d'abord, créez un objet Rectangle. Les arguments sont également les coordonnées x et y pour le coin supérieur gauche, la largeur et la hauteur.
Rectangle rectangle = nouveau Rectangle (100, 350, 500, 200);
- Utilisez la fonction DrawRectangle() pour dessiner le rectangle. Au lieu de transmettre x, y, largeur et hauteur comme auparavant, vous pouvez utiliser l'objet Rectangle à la place.
e. Graphique. DrawRectangle (redPen, rectangle);
- Appuyez sur le bouton de lecture vert en haut de Visual Studio pour voir les modifications.
- Revenez au code pour dessiner d'autres formes. Utilisez la fonction DrawEllipse() pour dessiner un cercle.
Lorsque vous dessinez un cercle, les coordonnées x et y (x=400, y=150) font référence au coin supérieur gauche du cercle, et non au centre du cercle.Couleur verte = Couleur. FromArgb (255, 0, 255, 0);
Pen greenPen = nouveau Pen (vert);
stylo vert. Largeur = 5 ;
e. Graphique. DrawEllipse (greenPen, 400, 150, 400, 400); - Pour dessiner d'autres formes telles que des triangles ou des hexagones, utilisez la méthode DrawPolygon(). Ici, vous pouvez spécifier une liste de coordonnées pour représenter les points de la forme.
La méthode DrawPolygon() tracera des lignes entre les points spécifiés. Couleur bleu = Couleur. FromArgb (255, 0, 0, 255);
Pen bluePen = nouveau Pen (bleu);
stylo bleu. Largeur = 5 ;
PointF[] coordinatesForTriangle = new PointF[] {
nouveau PointF(400, 150),
nouveau PointF(300, 300),
nouveau PointF(500, 300)
};
e. Graphique. DrawPolygon (bluePen, coordinatesForTriangle);
Comment utiliser la classe Brush pour remplir des formes avec de la couleur
Vous pouvez utiliser les méthodes FillRectangle(), FillEllipses() ou FillTriangle() pour créer des formes avec une couleur unie.
- Tout d'abord, créez un objet pinceau.
Couleur violet = Couleur. FromArgb (255, 128, 0, 0);
SolidBrush solidBrush = nouveau SolidBrush (violet); - Utilisez les méthodes FillRectangle(), FillEllipses() ou FillTriangle(). Ils fonctionnent de la même manière que les fonctions de dessin ci-dessus, sauf qu'au lieu d'un stylo, ils utilisent un objet Brush.
e. Graphique. FillRectangle (solidBrush, 50, 50, 200, 250);
e. Graphique. FillEllipse (solidBrush, 300, 50, 200, 200);
e. Graphique. FillPolygon (solidBrush, new PointF[] { new PointF(700, 150), new PointF(600, 300), new PointF(800, 300) }); - Vous pouvez également saisir directement un objet de forme au lieu de fournir des coordonnées.
Rectangle rectangle = nouveau Rectangle (100, 350, 500, 200);
e. Graphique. FillRectangle (solidBrush, rectangle); - Utilisez le HatchBrush pour remplir la forme en utilisant un style de remplissage différent, tel qu'un motif horizontal ou vertical.
Couleur bleu = Couleur. FromArgb (255, 0, 0, 255);
Couleur verte = Couleur. FromArgb (255, 0, 255, 0);
HatchBrush hatchBrush = nouveau HatchBrush (HatchStyle. horizontale, verte, bleue);
e. Graphique. FillRectangle (hatchBrush, 50, 50, 200, 250); - Vous pouvez utiliser le TextureBrush pour remplir une forme à l'aide d'une image. Ici, créez un bitmap en pointant sur un fichier image. Au lieu de créer un pinceau à l'aide d'une couleur, créez-le à l'aide de l'image.
Image bitmap = (Bitmap) Image. FromFile(@"C:\Users\Sharl\Desktop\flag.bmp", true);
TextureBrush textureBrush = new TextureBrush (image);
e. Graphique. FillRectangle (textureBrush, 100, 100, 500, 400);
Comment rendre des images sur le formulaire
Pour restituer une image, créez un objet de contrôle PictureBox et ajoutez-le au formulaire.
- Créez un objet de contrôle PictureBox à l'aide d'un fichier image.
Image PictureBox = new PictureBox();
image. ImageLocation = @"C:\Users\Sharl\Desktop\flagLarge.bmp" ; - Définissez la taille de l'image et ajoutez-la au formulaire pour qu'elle s'affiche.
image. SizeMode = PictureBoxSizeMode. Taille automatique ;
cette. Contrôles. Ajouter une image); - Appuyez sur le bouton de démarrage vert en haut pour afficher l'image.
Ajouter plus de formes à votre formulaire Windows
Vous devez maintenant comprendre comment ajouter des lignes, des formes et des images à votre formulaire Windows. Vous pouvez combiner des formes pour créer de nouvelles formes. Vous pouvez également jouer avec les fonctions intégrées pour créer des formes plus complexes.
ASP.NET vaut-il la peine d'apprendre en 2021 ?
Lire la suite
Rubriques connexes
- Programmation
- Programmation
A propos de l'auteur
Sharlene est rédactrice technique chez MUO et travaille également à plein temps dans le développement de logiciels. Elle est titulaire d'un baccalauréat en informatique et possède une expérience antérieure en assurance qualité et en tutorat universitaire. Sharlene adore jouer et jouer du piano.
Abonnez-vous à notre newsletter
Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives !
Cliquez ici pour vous abonner