- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
再论窗体除窗体设计原理以外,还需考虑应用程序的开始与结束。有一些技巧用于决定应用程序启动时的外观。熟悉应用程序卸载时进行的一些处理也很重要。设置启动窗体在缺省情况下,应用程序中的第一个窗体被指定为启动窗体。应用程序开始运行时,此窗体就被显示出来(因而最先执行的代码是该窗体的Form_Initialize 事件中的代码)。如果想在应用程序启动时显示别的窗体,那么就得改变启动窗体。要改变启动窗体,请按照以下步骤执行:1. 从“工程”菜单中,选取“工程属性”。2. 选取“一般”。3. 在“启动对象”ListBox 中,选取要作为新启动窗体的窗体。4. 选取“确定”。没有启动窗体时的启动有时候也许要应用程序启动时不加载任何窗体。例如:可能想先运行装入数据文件的代码,然后再根据数据文件的内容决定显示几个不同窗体中的哪一个。要做到这一点,可在标准模块中创建一个名为 Main 的子过程,如下面的例子所示。Sub Main()Dim intStatus As Integer调用一个函数过程来检验用户状态。intStatus = GetUserStatus根据状态显示某个启动窗体。If intStatus = 1 ThenfrmMain.ShowElsefrmPassword.ShowEnd If这个过程必须是一个子过程,且不能在窗体模块内。欲将 Sub Main 过程设为启动对象,可从“工程”菜单中,选取“工程属性”,再选“一般”,然后从“启动对象”框中选定“Sub Main”。显示启动时的快速显示如果启动时有一个较长的执行过程,例如要从数据库中装入大量数据或者要装入一些大型位图,这时可能希望在启动时给出一个快速显示。快速显示是一种窗体,它通常显示的是诸如应用程序名,版权信息和一个简单的位图等内容。启动 Visual Basic 时所显示的屏幕就是一个快速显示。要显示快速显示,需用 Sub Main 过程作为启动对象,并用 Show 方法显示该窗体:Private Sub Main()显示快速显示。frmSplash.Show在此处添加启动过程。...显示主窗体并卸载快速显示。frmMain.ShowUnload frmSplashEnd Sub当一些启动例程正在执行时,快速显示能吸引用户的注意,造成应用程序装载很快的错觉。当这些启动例程完成以后,可以装入第一个窗体并使其快速显示卸载。对于快速显示的设计来说,尽量简单为好。如果使用大量位图或者大量控件,则快速显示本身装入将会变慢。结束应用程序当所有窗体都已关闭并且没有代码正在执行时,事件驱动的应用程序就停止运行。如果最后一个可见窗体关闭时仍有隐藏窗体存在,那么,应用程序表现为已经结束了(因为没有可见的窗体),可实际上应用程序仍在继续运行,直至所有隐藏窗体都关闭为止。之所以出现这种情况,是因为对已卸载窗体的属性或控件的任何访问,都将导致隐含地、不予显示地加载那个窗体。避免出现关闭应用程序时的这类问题,最好的办法是确保所有的窗体都已卸载。如果有一个以上窗体,可以使用 Forms 集合和 Unload 语句。例如,在主窗体上可以用一个名为 cmdQuit 的命令按钮退出程序。如果应用程序只有一个窗体,则 Click 事件过程可简单为:Private Sub cmdQuit_Click ()Unload MeEnd Sub如果应用程序使用多窗体,通过把代码放入主窗体的 Unload 事件过程可以卸载这些窗体。可以使用 Forms 集合确保找到并关闭所有窗体。下列代码就是使用窗体集合来卸载所有窗体的:Private Sub Form_Unload (Cancel As Integer)Dim i as integer在窗体集合中循环并卸载每个窗体。For i = Forms.Count - 1 to 0 Step - 1Unload Forms(i)NextEnd Sub有一些情况需要不顾现存窗体或对象的状态而结束应用程序。为此,VisualBasic 提供了 End 语句。End 语句使应用程序立即结束:在End语句之后的代码不会执行,也不会再有事件发生。特别是,Visual Basic将不执行任何窗体的QueryUnload、Unload或 Terminate事件过程。对象的各个引用将被释放,但如果定义有自己的类,Visual Basic 将不执行由这些类所创建对象的Terminate事件。除 End 语句以外,Stop语句可以暂停一个应用程序。然而,Stop 语句只能在调试时使用,因为它不释放对象的引用。详细信息 关于 Stop 语句的信息,请参阅第十三章“调试代码和处理错误”中的“使用中断模式”,以及《语言参考》的“Stop 语句”。关于窗体集合或者释放对象引用的信息,请参阅第九章“用对象编程”
原创力文档


文档评论(0)