我正在尝试制作游戏。我正在使用pictureboxes。 这个概念是当pcbox击中另一个时,它会增加积分。 所以我想要一个像鼠标这样的事件进入图片盒 (当图片框进入另一个图片框时)。 我试过这段代码,但效率不高
If pc1.left = pc2.left - 120 Then
Call MsgBox("whatever")
ElseIf pc1.left = pc2.left + 120 Then
call msgbox("hit")
EndIf
答案 0 :(得分:0)
你应该避免图片框飞来飞去,但这仍然是我的答案:
Dim rectangle1 as Rectangle = pc1.Bounds
Dim rectangle2 as Rectangle = pc2.Bounds
If (rectangle1.IntersectsWith(rectangle2)) Then
//whatever
Else
//hit
EndIf
甚至
If (pc1.Bounds.IntersectsWith(pc2.Bounds)) Then
//whatever
Else
//hit
EndIf
这可以检测到图片框的任何交集,但正如我所提到的,这不是在vb.net中编程游戏的合适方式。
也许你应该考虑阅读this guide关于编写一个简单的乒乓球游戏(没有控制作为演员)。