📄 subject_35488.htm
字号:
<p>
序号:35488 发表者:chejie 发表日期:2003-04-07 12:14:57
<br>主题:请问怎样通过一个按钮挽救一个死循环(故意的)
<br>内容:谢谢!
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:(zl剑客) 回复日期:2003-04-07 12:17:20
<br>内容:用线程和等待事件都可以啊
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:xiongli 回复日期:2003-04-07 12:23:22
<br>内容:如果是单线程程序,在出现死循环的时候,你点按钮是根本不可能有反应的,因为处理按钮的回调函数因为死循环而永远得不到执行<BR>如果你是多线程,只需要简单地terminatethread就可以了
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:chejie 回复日期:2003-04-07 12:24:32
<br>内容:有没有例子啊?<BR>像这样的死循环:<BR>void a<BR>{<BR> .....<BR> .......<BR> a();<BR>}<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:IceAge 回复日期:2003-04-07 13:06:38
<br>内容:while (true) {<BR> if (PeekMessage(&message, NULL, 0, 0,PM_REMOVE)) {<BR> TranslateMessage(&message);<BR> DispatchMessage(&message);<BR> }<BR> else {<BR> DoSomething(); //循环体<BR> ...<BR> }<BR>}<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:chejie 回复日期:2003-04-07 13:23:37
<br>内容:3KU问题解决了!<BR>可我想知道还有没有其他的方法(只是想了解的更多一点)?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:chejie 回复日期:2003-04-07 13:32:52
<br>内容:比如说同样的例子在VB 中怎么实现呢?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:IceAge 回复日期:2003-04-07 20:38:54
<br>内容:VB 中可用:DonEvents
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:chejie 回复日期:2003-04-08 10:22:13
<br>内容:vb中用DonEvents ?那好吧!我们就真枪真弹练一把!<BR>-------------------------------------------------------------------------------<BR>Sub A()<BR>.....<BR>......<BR>do something<BR>......<BR>......<BR>call A<BR>end sub<BR>-------------------------------------------------------------------------------<BR>Private Sub start()<BR>...........<BR>End Sub<BR>--------------------------------------------------------------------------------<BR>Private Sub stop()<BR>..?<BR>..?<BR>End Sub<BR>--------------------------------------------------------------------------------<BR>这个stop怎么写?<BR>或者怎么挽救?前提:数据不丢失!<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:IceAge 回复日期:2003-04-08 10:32:05
<br>内容: bExitCondition = true<BR> Do while (bExitCondition) <BR> DoEvents<BR> ...<BR> loop<BR><BR>...<BR><BR>sub button_click<BR> bExitCondition = false<BR>end sub
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:chejie 回复日期:2003-04-08 10:41:48
<br>内容:你的意思是:<BR>-------------------------------------------------------------------------------<BR>Sub A()<BR>.....<BR>......<BR>do something<BR>......<BR>......<BR>call A<BR>end sub<BR>-------------------------------------------------------------------------------<BR>Private Sub start()<BR>...........<BR>End Sub<BR>--------------------------------------------------------------------------------<BR>Private Sub stop()<BR>bExitCondition = true<BR> Do while (bExitCondition) <BR> DoEvents<BR> ...<BR> loop<BR><BR>...<BR><BR>sub button_click<BR>bExitCondition = false<BR>End Sub<BR>--------------------------------------------------------------------------------<BR>?你认为我用一个CLICK控制一个死循环的缺陷是什么?<BR>如果这个缺陷是灾难性的,那么该怎么弥补呢?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:chejie 回复日期:2003-04-08 10:44:52
<br>内容:If GetInputState() Then DoEvents <BR>这样的话怎么样?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:IceAge 回复日期:2003-04-08 10:55:29
<br>内容:你为什么不先看看 DoEvents 的说明?<BR>DoEvents 可以出让控制权,让系统相应事件。<BR><BR>A 里 call A 是递归,另一种概念。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:chejie 回复日期:2003-04-08 11:22:48
<br>内容:那你认为这样写怎么样?用GetInputState() 可以吗?<BR>如果这样那么这个'STOP'是不是不用写了?<BR>------------------------------------------------------------------------------<BR>sub A()<BR><BR>Call take_photo<BR>Call delay(0.1)<BR><BR><BR>End sub<BR>------------------------------------------------------------------------------Private Sub start()<BR>Dim i as integer<BR><BR> For i = 1 To 1000000<BR> If GetInputState() Then DoEvents <BR> else <BR> Call take_photo<BR> End if <BR> Next i<BR><BR>End sub<BR>-------------------------------------------------------------------------------
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:chejie 回复日期:2003-04-09 13:08:13
<br>内容:能不能给我一个完整的答案呢?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:IceAge 回复日期:2003-04-09 20:32:24
<br>内容:参见:MSDN -> Index --> DoEvents code example<BR><BR><BR> bCondition = true<BR> For i = 1 To 1000000<BR> DoEvents<BR> if not bCondition then Exit for<BR> Call take_photo<BR> Next i<BR><BR><BR>...<BR><BR>sub button1_click<BR> bCondition = false<BR>end sub
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:chejie 回复日期:2003-04-11 10:10:48
<br>内容:3KU!真是太感激了~我跑遍了大江南北终于让我找到你了------------答案~~~~~~<BR>IceAge兄请别见怪,我比较喜欢追根问底,目的只有一个,为了知道为什么!<BR>谢谢你~ 真心的~~~~~~~~~~`<BR><BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -