还有对象没有释放吧. 在退出时清一下吧. Private Sub Form_Unload(Cancel As Integer) Dim myForm As Form For Each myForm In Forms Unload myForm Set myForm = Nothing Next End sub
你只是关闭了主窗体,但是你里面的对象并没有完全释放掉,先释放掉你建立的所有对象,然后用 End 结束程序
添加两个事件即可非常有效地解决此问题:Private Sub Form_Unload(Cancel As Integer) End End Sub Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) Select Case UnloadMode Case 0: '窗体右上角的X号关闭窗体 Call FileQ_Click Case 1: '程序代码关闭窗体,例如Unload Me Call FileQ_Click End Case 2: '关闭Windows关闭窗体 End Case 3: '在任务管理器中关闭窗体 End Case 4: 'MDI窗体被卸载时关闭窗体,此程序无MDI窗体 End Select End Sub这两个事件都是窗体自身包含的事件!你只需要把事件中的代码加入到相应的事件中去即可。当然直接复制过去也可!
在退出时清一下吧.
Private Sub Form_Unload(Cancel As Integer)
Dim myForm As Form
For Each myForm In Forms
Unload myForm
Set myForm = Nothing
Next
End sub
在最后一个窗口关闭时加上end就行了。
比如:mainform的unload事件中加入end就可以了。
End
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
Select Case UnloadMode
Case 0:
'窗体右上角的X号关闭窗体
Call FileQ_Click
Case 1:
'程序代码关闭窗体,例如Unload Me
Call FileQ_Click
End
Case 2:
'关闭Windows关闭窗体
End
Case 3:
'在任务管理器中关闭窗体
End
Case 4:
'MDI窗体被卸载时关闭窗体,此程序无MDI窗体
End Select
End Sub这两个事件都是窗体自身包含的事件!你只需要把事件中的代码加入到相应的事件中去即可。当然直接复制过去也可!
因为这是我自己的程序中写的代码,所以加入了自己的元素。其中的Call FileQ_Click你可以去掉。你在每一个分支中分别写入一个end就行!