利用sub main ()对窗体启动控制,以及unload 和end结束窗体

学到的新知识给大家分享:

设置启动窗体 

    在缺省情况下,应用程序中的第一个窗体被指定为启动窗体。应用程序开始运行时,此窗体就被显示出来(因而最先执行的代码是该窗体的   Form_Initialize   事件中的代码)。如果想在应用程序启动时显示别的窗体,那么就得改变启动窗体。 
要改变启动窗体,请按照以下步骤执行:   
    从“工程”菜单中,选取“工程属性”选取“一般”在“启动对象”ListBox 中,选取要作为新启动窗体的窗体。 选取“确定”。 


  
    没有启动窗体时的启动 
    有时候也许要应用程序启动时不加载任何窗体。例如:可能想先运行装入数据文件的代码,然后再根据数据文件的内容决定显示几个不同窗体中的哪一个。要做到这一点,可在标准模块中创建一个名为   Main   的子过程,如下面的例子所示。 

Sub   Main() 
      Dim   intStatus   As   Integer       
      '调用一个函数过程来检验用户状态。 
      intStatus   =   GetUserStatus 
      '根据状态显示某个启动窗体。 
      If   intStatus   =   1   Then 
            frmMain.Show 
      Else 
            frmPassword.Show 
      End   If 

    这个过程必须是一个子过程,且不能在窗体模块内。欲将   Sub   Main   过程设为启动对象,可从“工程”菜单中,选取“工程属性”,再选“一般”,然后从“启动对象”框中选定“Sub   Main”。 

    显示启动时的快速显示   
如果启动时有一个较长的执行过程,例如要从数据库中装入大量数据或者要装入一些大型位图,这时可能希望在启动时给出一个快速显示。快速显示是一种窗体,它通常显示的是诸如应用程序名,版权信息和一个简单的位图等内容。启动   Visual   Basic   时所显示的屏幕就是一个快速显示。 

    要显示快速显示,需用   Sub   Main   过程作为启动对象,并用   Show   方法显示该窗体: 

Private   Sub   Main() 
      '显示快速显示。 
      frmSplash.Show 
      '在此处添加启动过程。 
      ... 
      '显示主窗体并卸载快速显示。 
      frmMain.Show 
      Unload   frmSplash 
End   Sub 

    当一些启动例程正在执行时,快速显示能吸引用户的注意,造成应用程序装载很快的错觉。当这些启动例程完成以时,可以装入第一个窗体并使快速显示卸载。 

    对于快速显示的设计来说,尽量简单为好。如果使用大量位图或者大量控件,则快速显示本身装入将会变慢。 

    结束应用程序   
当所有窗体都已关闭并且没有代码正在执行时,事件驱动的应用程序就停止运行。如果最后一个可见窗体关闭时仍有隐藏窗体存在,那么,应用程序表现为已经结束了(因为没有可见的窗体),可实际上应用程序仍在继续运行,直至所有隐藏窗体都关闭为止。之所以出现这种情况,是因为对已卸载窗体的属性或控件的任何访问,都将导致隐含地、不予显示地加载那个窗体。 

    避免出现关闭应用程序时的这类问题,最好的办法是确保所有的窗体都已卸载。如果有一个以上窗体,可以使用   Forms   集合和   Unload   语句。例如,在主窗体上可以用一个名为   cmdQuit   的命令按钮用于退出程序。如果应用程序只有一个窗体,则   Click   事件过程可简单为: 

Private   Sub   cmdQuit_Click   () 
      Unload   Me 
End   Sub 

    如果应用程序使用多窗体,通过把代码放入主窗体的   Unload   事件过程可以卸载这些窗体。可以使用   Forms   集合确保找到并关闭所有窗体。下列代码就是使用窗体集合来卸载所有窗体的: 

Private   Sub   Form_Unload   (Cancel   As   Integer) 
      Dim   i   as   integer 
      '在窗体集合中循环并卸载每个窗体。 
      For   i   =   Forms.Count   –   1   to   0   Step   -   1 
            Unload   Forms(i) 
      Next 
End   Sub 

    有一些情况需要不顾现存窗体或对象的状态而结束应用程序。为此,Visual   Basic   提供了   End   语句。 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 12
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值