所以我一直试图用箭头键进行游戏。 标签是字符,如果标签在对象内部,它将执行某些操作......
但是我遇到了一个在互联网上找不到的非常难的问题。
如何检查标签是否在对象内?示例:图片框和面板。
我试过这个。
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If Label1.Location.X = Panel1.Location.X And Label1.Location.Y = Panel1.Location.Y Then
Me.Close() 'Any code.
End If
End Sub
不起作用, 任何帮助将不胜感激。
顺便说一下,我是初学者,我只做简单的应用程序。就像逃离房间,迷宫......等等。
答案 0 :(得分:0)
我会使用标签的父属性来查看它是否在面板内。
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If Label1.Parent IsNot Nothing AndAlso Label1.Parent Is Panel1 Then
Me.Close() 'Any code.
End If
End Sub
如果你想看看Label是否在Panel上,我会尝试这样的事情。 ClientRectangle属性是控件占用的矩形。我假设面板比标签大。
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If Panel1.ClientRectangle.Contains(Label1.ClientRectangle) Then
Me.Close() 'Any code.
End If
End Sub
如果它较小,您可以检查某个点是否在Panel的矩形中。例如左上角
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If Panel1.ClientRectangle.Contains(new Point(Label1.Left, Label1.Top)) Then
Me.Close() 'Any code.
End If
End Sub