通过这个类,你可以获得自已的 collection of forms. 现在的forms具有
collection与枚举的特点。即从 collection中增加或删除相应的form
在主程序中form1的 new 过程中(被region折起来了,详见本系列讨论的第一节),
加入下一句:
forms.add(me)
需要注意的是:
这一句话应该要加在initializecomponent()之后。这是因为,我们防止重复
加入一个form的手段是运用form的name进行判断的。而正如我在第一节中所
描述的那样,系统把初始化的内容,包括name是写在initializecomponent()
子过程中的。由于每new一个实例,都会调用它一次,所以必须在add方法中
加入判断重复性的内容。
在 dispose 方法中,加入下一句:
forms.remove(me)
在这里,我们可以回顾一下第一节中谈到的析构的问题,由于forms是全局的,
所以当一个form关闭时,它并没有退出生存期,所以应该将关闭的这个form
从集合中删除掉。为什么关闭时会调用dispose方法的问题请回头看一下第一节。
你的程序中如果有很多个form,你要在每个form的new与dispose方法里中加入上两句
接下来你就可以使用了:
dim frm as form
for each frm in forms
if frm.name = "form2" then
frm.close()
end if
next