怎么在VB中把窗體刪除干凈
發(fā)表時(shí)間:2023-08-21 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]VB的End語(yǔ)句并不總是將在程序中打開(kāi)的東西卸載得一干二凈。例如你在程序中打開(kāi)了一個(gè)文件,而沒(méi)有用Close語(yǔ)句關(guān)閉這個(gè)文件,這時(shí)你通過(guò)程序中的End語(yǔ)句結(jié)束了程序,Windows就會(huì)認(rèn)為你打開(kāi)的文...
VB的End語(yǔ)句并不總是將在程序中打開(kāi)的東西卸載得一干二凈。例如你在程序中打
開(kāi)了一個(gè)文件,而沒(méi)有用Close語(yǔ)句關(guān)閉這個(gè)文件,這時(shí)你通過(guò)程序中的End語(yǔ)句結(jié)
束了程序,Windows就會(huì)認(rèn)為你打開(kāi)的文件正在被一個(gè)程序所使用,導(dǎo)致你在資源
管理器中無(wú)法刪除該文件。在有些情況下,如果你只用End語(yǔ)句來(lái)結(jié)束程序,會(huì)導(dǎo)
致一些非常嚴(yán)重的后果,例如Windows會(huì)發(fā)出錯(cuò)誤的信息,告訴你C盤(pán)損壞等等。
因此最好是自己編寫(xiě)一個(gè)關(guān)閉子程序:
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