Vb.net Visual Basic 2010在窗体上的某个点查找对象

Vb.net Visual Basic 2010在窗体上的某个点查找对象,vb.net,visual-studio-2010,object,Vb.net,Visual Studio 2010,Object,所以我一直在用VisualBasic2010编程。对于我的程序,我需要确定主窗体上的某个点是否有对象[例如(20,35)]。我试过: Dim ObjectFind as object ObjectFind = Me.GetChildAtPoint(20, 35) If ObjectFind.Equals(Me) = false then ' Code is here end if 我不确定这是否有效,ObjectFind通常等于{System.Windows.For

所以我一直在用VisualBasic2010编程。对于我的程序,我需要确定主窗体上的某个点是否有对象[例如(20,35)]。我试过:

Dim ObjectFind as object   
ObjectFind = Me.GetChildAtPoint(20, 35)
If ObjectFind.Equals(Me) = false then  
    ' Code is here  
end if  
我不确定这是否有效,ObjectFind通常等于{System.Windows.Forms.Form} 所以我想,如果ObjectFind不等于{System.Windows.Forms.Form},那么我会发现那里有一个不同的对象,所以我做了:

If ObjectFind <> System.Windows.Forms.Form then  
    ' Code is here  
end if 
我犯了和以前一样的错误。
由于System.Windows.Forms.Form是我尝试的主要表单:

Dim ObjectFind as object   
ObjectFind = Me.GetChildAtPoint(20, 35)
If ObjectFind.Equals(Me) = false then  
    ' Code is here  
end if  
但不管是什么对象,它总是错误的(20,35)


如果您不确定我的问题是:如何在VisualBasic2010中找出表单上某个点是否有对象

以下是如何在VB.NET中测试对象是否为特定类型:

If TypeOf ObjectFind Is System.Windows.Forms.Form then

如果使用以下设备,则安装第一个:

If ObjectFind.GetType() <> GetType(System.Windows.Forms.Form) Then

End If
如果ObjectFind.GetType()GetType(System.Windows.Forms.Form)那么
如果结束

这种进行类型比较的方法在测试项目中对我不起作用。可能是因为在我的例子中,ObjectFind派生自一个表单,而不仅仅是一个表单。必须使用此选项:
如果ObjectFind.GetType.IsSubclassOf(GetType(Form)),则
。您说,“我需要确定主窗体上的某个点上是否有对象…”您指的是某种控件吗?