转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件开发 >> VB.NET程序 >> 正文
Henry手记-VB.net WinForm中的FORM初探(三)         ★★★★

Henry手记-VB.net WinForm中的FORM初探(三)

作者:闵涛 文章来源:闵涛的学习笔记 点击数:1744 更新时间:2009/4/23 19:01:08
 

    Overridable Function GetEnumerator() As _

IEnumerator Implements IEnumerable.GetEnumerator

‘返回可循环访问集合的枚举数。一旦为类定义了Ienumerable接口,就必须要重写

GetEnumerator。调用 GetEnumerator 时,它将构建一个枚举数对象,其中包含集合中

的当前版本号以及对集合项的引用。每次访问枚举数时,它都会将枚举数的版本与集合

的版本进行比较。如果版本不匹配,则认为集合被更改,从而发生异常。

 

        Return c.GetEnumerator

    End Function

End Class

     通过这个类,你可以获得自已的 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

现在的forms比以前那一个Count属性的集合使用方法更灵活,内容更多。当然损失的是自动的功能。

在多窗体中使用时,还是请参看第二节的使用方法,综合考虑一下。

 

 

----

  声明:本文版权与解释权归韩睿所有,如需转载,请保留完整的内容及此声明。

QQ: 18349592

上一页  [1] [2] 


[C语言系列]C# WinForm 中Label自动换行 解决方法  [电脑应用]c# winform 打包部署 自定义界面 或设置开机启动
[电脑应用]C# WinForm 关闭登陆窗体,打开主窗体的实现  [C语言系列]winform datagridview如何获取选中行的索引
[C语言系列]c# _winform实现网页上用户自动登陆,模拟网站登录  [C语言系列]C#的winform中实现tabPage的隐藏 .
[C语言系列]NET 中C#的switch语句的语法  [C语言系列]C# WinForm中Application.StartupPath与AppDomain…
[系统软件]托拽Explore中的文件到VB.net的窗口  [系统软件]WinForm 程序实现XP风格
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · C语言系列  · VB.NET程序
    · JAVA开发  · Delphi程序
    · 脚本语言
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台