我正在创建一个WindowsForms应用程序。在这个应用程序中,我需要绘制多边形,使用多边形顶点(节点)坐标的数组。检测鼠标点击多边形的节点
当用户点击一个polygone的节点时,我需要检测,选择哪个节点来建议用户删除这个节点。
我正在使用WindowsForms,PictureBox和Graphics.DrawPolygon来寻找多边形。
如何检测,如果用户点击了其中一个节点?是否有比WindowsForm和PictureBox更合适的绘制多边形的方法?
在此先感谢。
我正在创建一个WindowsForms应用程序。在这个应用程序中,我需要绘制多边形,使用多边形顶点(节点)坐标的数组。检测鼠标点击多边形的节点
当用户点击一个polygone的节点时,我需要检测,选择哪个节点来建议用户删除这个节点。
我正在使用WindowsForms,PictureBox和Graphics.DrawPolygon来寻找多边形。
如何检测,如果用户点击了其中一个节点?是否有比WindowsForm和PictureBox更合适的绘制多边形的方法?
在此先感谢。
您必须通过运行节点点并检查用户点击的位置来检查图片框何时被点击。
Point[] listOfNodes = new Point[1];
private void pictureBox1_MouseClick(object sender, MouseEventArgs e)
{
foreach (Point item in listOfNodes)
{
if (item == e.Location)
{
//The node was clicked.
}
}
}
请参阅:X/Y Coordinates of Click on an Image in a Windows Forms Application (.net)
你需要获得坐标,然后击中测试你的多边形。
谢谢你的回答。我同意这个想法,同时我也希望这是一种已经完成的控制,可以用来绘制多边形,并且有像polygone_SelectNode这样的事件。可能我必须自己做:) – 2013-04-05 08:10:45
尝试谷歌搜索控件。但我不认为你会找到很多。 – 2013-04-05 08:17:59