我有一个表单,我从自定义类模块动态实例化对象。
生成的对象是公共定义的,然后我可以通过Forms("Formname").objName1.Property
我也想动态访问对象,就像在控件集合中一样:Forms("Formname").Controls("objName" & ID).Property
但是没有对象的集合。
有人有意见吗?
答案 0 :(得分:1)
您可以使用可公开访问的集合,例如
Dim myObjects As Collection
Private Sub Form_Load()
Set MyObjects = New Collection
MyObjects.Add Obj1, "First Object"
MyObjects.Add Obj2, "Second Object"
End Sub
然后,在全球范围内:
Forms("MyForm").MyObjects("First Object").Property
当然,如果你真的想做一些奇特的东西,你可以使用custom collection class,这样你就可以对这个类有更多的控制权,并对其成员有智能感知。