2010-11-10 91 views
1

我有一个.JPEG图片,我想把它作为背景图片。在此图片中,是否可以将单独的区域用作按钮而不使用按钮控件?.JPEG图片中的可点击区域?

假设我的图片包含三个字母A,B和C.是否可以在每个字母周围创建一些区域,以便用户点击字母B并以某种方式响应(例如在图片的另一个区域绘制一些文字)?

回答

3

有很多方法,其中很多涉及按钮。例如,您可以使用按钮控件的样式来在其控件模板中仅包含一个透明的矩形,因此它是不可见的,但仍然表现为按钮。或者,也可以处理图像上的MouseLeftButtonDown等低级事件,并在事件发生时检测鼠标的位置。真的......很多方面。这一切都取决于具体的要求,如何定制解决方案必须如何灵活...等。

+0

+1,但是“MouseLeftButtonDown在图像上并在事件发生时检测鼠标的位置”通常称为命中测试。 – 2010-11-10 21:53:30

+0

+1无论如何,最终可能会出现按钮。 – Daniel 2010-11-10 22:04:51

+0

@Paul:在Silverlight中命中测试具有更普遍的含义,所以我试图避免这种情况。如果你想获得技术,它就会测试一个图像映射,但我同意我倾向于有点冗长:P此外,这种方法的优点,忘记提及,可能是你可以加载命中测试图(区域具有不同的行为)从配置文件或服务,这意味着它将是灵活的未来变化或不同/动态图像。 – 2010-11-11 10:06:19

0

解决此问题的一种方法是使用<map><area>HTML标记。 See here

另一种方法是定义一些<a>标签,然后放置它们(没有背景图片或文字),在您要点击的区域,但<map>应该在这种情况下正常工作。

+0

+1哈哈...好吧,这是非常明显的我以前没有网络编程。谢谢! – Daniel 2010-11-10 22:03:43