vb 怎样澈底关闭程序?

来源:百度知道 编辑:UC知道 时间:2024/06/09 07:29:05
我做了一个程序,其中用到8个TIMER控件,周期从容100毫秒至 10秒不等,当我点窗体的关闭按钮或用UNLOAD命令后,窗体界面消失了,可是在进程里还能见到我的程序在运行.经检查,发现是TIMER控件在UNLOAD窗体后又引用了部份控件属性,导致无法关闭程序.然而TIMER 控件周期不一至,内部程序工作更不定时,比如某一TIMER正在上传文件,这就给关闭程序带来了很多麻烦,我找不到更好的办法,用END时又会报错!请求高手给个简单或更完美的答案?
Timer.Enabled = False 这个我肯定是做了的,问题是我在关闭窗体时,Timer内部程序正在工作中,具体哪一个Timer在工作中我无法判断,而且它的工作时长不定也许要几分钟也可能,这时我在Form_Unload中加入Timer.Enabled = False是无法终止下在Timer内部工作的程序的!

你在窗体里加了8个TIMER控件,可以在窗体里添加1个 变量 用于
在TIMER事件中收到窗体关闭信息

Dim bToQuit As Boolean

Private Sub Form_Load()
bToQuit = False

End Sub

Private Sub Form_Unload(Cancel As Integer)
bToQuit = True

End Sub

Private Sub Timer1_Timer()
If bToQuit Then
Timer1.Enabled = False
'结束处理
Else
End If
End Sub

这样窗体关闭时,Timer1事件中就可以作出结束处理,
比如上传文件的,可以中断上传,保存信息。

在你unload前,先把timer的enable属性设false,这样先停止timer再关闭程序。
点窗口的叉关闭要在form的formclose动作时加入禁用timer代码

先将所有的Timer1.Enabled = False 再unload me

在unload中,加入timer的enable=false,这样先停止所有的timer再关闭程序。

你的窗体有几个啊??