Comment suivre les événements de la souris sur des graphiques non rectangulaires dessinés sur un panneau? Lorsque vous utilisez des graphiques ou des graphiques rectangulaires qui peuvent être contenus dans un cadre de sélection rectangulaire, j'utilise Rectangle.Contains. Que dois-je faire avec des formes non rectangulaires.C#: Comment suivre les événements de souris sur des graphiques non rectangulaires dessinés sur un panneau?
1
A
Répondre
1
Si vous créez un GraphicsPath vous deux dessiner (Graphics.drawPath) et faire des tests avec GrapicsPath.IsVisible frappé. Si le dessin est contourné avec des couches de peinture qui se chevauchent, vous pouvez dessiner sur l'écran ainsi que sur une image en arrière-plan. Avec ce dernier, utiliser des valeurs de couleur pour indiquer des objets spécifiques. Hit test avec GetPixel().
1
Vous pouvez utiliser une région pour dessiner vos graphiques et lancer un test. test de recherche d'un point dans une région: Region.IsVisible (PointF)
Voir http://www.java2s.com/Code/CSharp/2D-Graphics/IsapointvisibletoaRegion.htm