Le contrôle PictureBox de Windows Forms offre un moyen pratique d'afficher des images. Cependant, l'intégration efficace de méthodes de dessin personnalisées avec l'événement peinture de l'image
nécessite une attention particulière. Ce guide explique comment combiner la logique de dessin personnalisé de manière transparente avec le gestionnaire d'événements peinture
.
Comprendre l'événement peinture
et les méthodes de dessin personnalisé
L'événement de la peinture de l'image
se déclenche chaque fois que le contrôle doit redessiner (par exemple, redimensionnement, change d'image). Votre méthode de dessin personnalisée (par exemple, cercle ()
) encapsule la logique de dessin, renvoyant potentiellement un objet bitmap
Stratégies d'intégration
Deux approches principales existent pour intégrer votre méthode de dessin personnalisé:
1. Dessin direct sur le contrôle:
Cette approche s'appuie directement sur la boîte d'image à l'aide de l'objet
e.graphics dans le gestionnaire d'événements
peinture
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawEllipse(Pens.Red, new Rectangle(3, 4, 44, 44));
// ... other drawing operations ...
}
2. Dessin dans l'image:
Cette méthode modifie la propriété sous-jacente de l'image sous-jacente de l'image. Les changements sont persistants car ils modifient le bitmap lui-même. Utilisez
graphics.fromimage (picturebox1.image) pour créer un objet Graphics
graphiques , puis appelez
picturebox1.refresh () pour mettre à jour l'affichage.
void drawIntoImage()
{
using (Graphics G = Graphics.FromImage(pictureBox1.Image))
{
G.DrawEllipse(Pens.Orange, new Rectangle(13, 14, 44, 44));
// ... other drawing operations ...
}
pictureBox1.Refresh();
}
Choisir la meilleure approche
L'approche optimale dépend de vos besoins spécifiques. Le dessin direct convient lorsque vous avez besoin de modifications immédiates et persistantes directement sur la boîte d'image. Le dessin dans l'image est préférable lorsque vous souhaitez modifier le bitmap sous-jacent, garantissant que ces modifications restent même après plusieurs repeints.Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3