如何在VB中把窗体卸载干净

王朝厨房·作者佚名  2007-01-04
宽屏版  字体: |||超大  

VB的End语句并不总是将在程序中打开的东西卸载得一干二净。例如你在程序中打

开了一个文件,而没有用Close语句关闭这个文件,这时你通过程序中的End语句结

束了程序,Windows就会认为你打开的文件正在被一个程序所使用,导致你在资源

管理器中无法删除该文件。在有些情况下,如果你只用End语句来结束程序,会导

致一些非常严重的后果,例如Windows会发出错误的信息,告诉你C盘损坏等等。

因此最好是自己编写一个关闭子程序:

Public Sub Shutdown(Optional ByVal Force As Boolean = False)

Dim I As Long

On Error Resume Next

For I = Forms.Count - 1 to 0 Step -1

Unload Forms(I) ’ Triggers QueryUnload and Form_Unload

’ If we aren’t in Force mode and the

’ unload failed, stop the shutdown.

If Not Force Then

If Forms.Count > I then

Exit Sub

End If

End If

Next I

’ If we are in Force mode OR all

’ forms unloaded, close all files.

If Force Or (Forms.Count = 0) Then Close

’ If we are in Force mode AND all

’ forms not unloaded, end.

If Force Or (Forms.Count > 0) Then End

End Sub

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有