程序无法完全结束

mimihuhu 2002-11-12 10:38:39
在form中点右上角的X关闭程序时,我程序里还有一个循环没结束,请问有没有什么命令将所有正在运行的循环结束?谢谢
...全文
44 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
mimihuhu 2002-11-12
  • 打赏
  • 举报
回复
谢谢
mimihuhu 2002-11-12
  • 打赏
  • 举报
回复
end what
Sean918 2002-11-12
  • 打赏
  • 举报
回复
在form_unload() 里加上 end
mimihuhu 2002-11-12
  • 打赏
  • 举报
回复
Do While .PortOpen = True
BUFFER$ = BUFFER$ + .Input
DoEvents
If InStr(BUFFER$, "GPRMC") Then
Txt.Text = BUFFER$
str1 = Left(BUFFER$, InStr(BUFFER$, "$GPGGA"))
str2 = Left(str1, InStr(str1, "$"))
Txt.Text = str2
If Not str1 = "" Then
a = Split(str1, ",")
If UBound(a) > 9 Then
temp = a(0)
time.Text = GetTime(temp)
temp = a(2)
latitude.Text = GetLatitude(temp)
latitude1.Text = a(3)
temp = a(4)
longtitude.Text = GetLongtitude(temp)
longtitude1.Text = a(5)
End If
End If
BUFFER$ = ""
End If

Loop
mimihuhu 2002-11-12
  • 打赏
  • 举报
回复
to鱼头

我的while里加了doevents ,具体不太清楚,是msdn例子上的搬来用,我用调试来看,form-unload里接下去就跳到那个循环里。
daviddivad 2002-11-12
  • 打赏
  • 举报
回复
Private Declare Function GetCurrentProcess Lib "kernel32" Alias "GetCurrentProcess" () As Long
Private Declare Function TerminateProcess Lib "kernel32" Alias "TerminateProcess" (ByVal hProcess As Long, ByVal uExitCode As Long) As Long


terminateprocess getcurrentprocess,byval 0&
holydiablo 2002-11-12
  • 打赏
  • 举报
回复
呵呵
你这个问题有些奇怪哦
关闭程序前会将程序中所有的栈清空,怎么会还有循环在那里呢
你的程序一般是以单线程运行的,所以如果在循环的话,你的关闭消息也要等循环结束才能得到响应
你问的这个问题不是问题
mouseanAnya 2002-11-12
  • 打赏
  • 举报
回复
do while not redset.eof
.................

doevents
redset.movenext
loop

qdcb 2002-11-12
  • 打赏
  • 举报
回复
在循环中加doevents

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧