我的Windows窗体中有PictureBox。当我点击图片的某些部分时,需要更改一些标签文本。 有没有办法知道它是否在图像的某些部分被点击了? 我没有提供任何代码,因为我认为你可以理解我的问题。
答案 0 :(得分:0)
我认为您rect
作为Rectangle
进行了一些初始化,其坐标相对于您的PictureBox
:
private void pictureBox1_MouseClick(object sender, MouseEventArgs e)
{
if(rect.Contains(e.Location)){
//your code here
}
}
答案 1 :(得分:0)
您应该为图像创建映射,如下所示:
Rectangle rect1 = new Rectangle(/*coordinates of part of image*/);
OnClick(object sender, MouseEventArgs e)
{
if (rect1.Contains(e.Location))
{
//handler for this part
}
}
答案 2 :(得分:0)
创建包含您想要互动的区域的Rectangle
列表。
让我们说:
private static List<Rectangle> rects
;
以某种顺序用所需的坐标填充它。
然后在OnClick事件
OnClick(object sender, MouseEventArgs e)
{
for(int i=0; i<rects.Count; i++)
if (r.Contains(e.Location))
ActionForArea(i);
}
也
private static void ActionForArea(int number)
{
//do sth
}