C#如何处理重叠的System.Drawing.Regions区域?

时间:2012-07-16 00:13:54

标签: image

我正在创建一个Jigsaw Puzzle游戏作为我的第一个C#程序(到目前为止已经有3个星期自学成才)并且我已经走了很远,我可以采用位图,将其分成图像,并根据需要使每个图像的部分透明。我有一系列的点,表明碎片的两侧,绘制边框就好了。 图形路径将封装这些点,区域将把Path对象作为定义它的参数。

我的问题是,当涉及到点击检测时,C#如何处理重叠的System.Drawing区域?如果一个区域与另一个区域重叠,两个区域都会以命中响应,还是最后绘制的区域会受到命中?

我从阅读本教程中得到了这个想法。 2D / RegionIsVisible.htm“&gt; http://www.java2s.com/Tutorial/CSharp/0480_2D/RegionIsVisible.htm并意识到我可以调用isVisible()方法来确定要移动的组件。感谢提前!< / p>

1 个答案:

答案 0 :(得分:0)

我实际上只是使用GraphicsPath而不是使用Region来解决这个问题。重叠不是问题。 MouseEvents所关心的就是你点击的位置。任何GraphicsPath构造,无论它是否与另一个构造重叠,都是合理的游戏。

无论如何,问题解决了。交叉的重叠区域或GraphicsPath不是问题!

我的C#故障排除游戏的当前进展。所有标签现在都是矩形的,但是将程序转换为弯曲标签应该是我的新理解的一块蛋糕: