1

我正在尝试制作游戏。我正在使用图片框。这个概念是,当 pcbox 击中另一个时,它会加分。所以我想要一个像鼠标进入图片框的事件(当一个图片框进入另一个图片框时)。我试过这段代码,但效率不高

 If pc1.left = pc2.left - 120 Then 
 Call MsgBox("whatever") 
 ElseIf pc1.left = pc2.left + 120 Then 
 call msgbox("hit")
 EndIf
4

1 回答 1

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 中编写游戏的合适方式。

也许您应该考虑阅读本指南,了解如何编写一个简单的乒乓球游戏(没有作为演员的控件)。

于 2013-08-01T07:09:43.810 回答