首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可点击的图像地图c#

可点击的图像地图c#
EN

Stack Overflow用户
提问于 2011-06-18 06:27:35
回答 2查看 7K关注 0票数 5

我正在制作一个C# inventory应用程序。然而,我希望有一个地图,用户可以点击几个地区,并与该特定地区的库存互动。

目前,我of了地图,并将其作为表单的背景。我计划将图片框放在不同的区域上,并手动编写代码,通过鼠标经过、单击和按下事件来提供按钮外观。

不管怎样,我的问题是,这是个好主意吗?我是否应该将地图加载到picturebox中,摆脱按钮的视觉效果,并跟踪点击的坐标?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-06-18 06:32:23

虽然我不认为这是一个坏主意,但另一种选择是使用Rectangles,并有一个由一系列Rectangle.Contains(Point)组成的onclick函数,以确定鼠标单击的点是否包含在任何可单击的区域中。

例如。

代码语言:javascript
复制
Rectangle R1 = new Rectangle(/*Passed Variables*/);
Rectangle R2 = new Rectangle(/*Passed Variables*/);
//...
OnClick(object sender, MouseEventArgs e)
 {
 If (R1.Contains(e.Location))
  {
   //Stuff
  }
 else
 {
  If (R2.Contains(e.Location))
   {
    //Stuff
   }
 }
}

但是,如果您有一个较大的Rectangle对象列表,则可以始终使用矩形数组和for循环,以便以更有效的方式检查单击的位置是否在任何矩形内。

票数 2
EN

Stack Overflow用户

发布于 2011-06-18 06:35:27

在CodeProject,有人为此创建了一个ImageMap Control。我想其他的也是可用的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6392450

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档