标题:[求助]对话框应用问题
只看楼主
fox2g
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-7-17
 问题点数:0 回复次数:6 
[求助]对话框应用问题
在对话框执行一个死循环程序,结果对话框上的控件都无效了,怎样才能实现死循环程序执行的同时,能够相应对话框上的其他控件?请各位大虾给点建议,谢啦
搜索更多相关主题的帖子: 对话框 应用 
2006-07-25 18:51
chenzd
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2006-7-12
得分:0 

采用多线程,将死循环程序放在另一个线程中运行


2006-07-25 20:13
myajax95
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:30
帖 子:2978
专家分:0
注 册:2006-3-5
得分:0 
如楼上所说的,另起一个thread去作这个工作,当那个thread完成时PostMessage回这个对话框。

http://myajax95./
2006-07-30 21:35
fox2g
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-7-17
得分:0 

谢谢

2006-08-05 09:03
yeshirow
Rank: 4
等 级:贵宾
威 望:10
帖 子:854
专家分:0
注 册:2006-6-8
得分:0 
不必另起線程了, 在循環中加入 GetMessage 和 DispatchMessage 轉移控制權

MSG msg;
while(死循環)
{
// you code......
//. ..........
// ........
GetMessage(&msg, NULL, 0, 0);
DispatchMessage(&msg);
}

原來朋友仔感情再天真, 亦是我永遠也會愛惜的人, 明日愛他人, 也記住學會不要緊; 原來朋友比戀人更高分, 亦讓我開始懂得不記恨, 若大家都敏感, 我更要永遠記得拒絕再因小事怪人, 爲何沒有這條校訓...Twins-朋友仔 MCSD Training
2006-08-07 05:00
myajax95
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:30
帖 子:2978
专家分:0
注 册:2006-3-5
得分:0 
以下是引用yeshirow在2006-8-7 5:00:05的发言:
不必另起線程了, 在循環中加入 GetMessage 和 DispatchMessage 轉移控制權

MSG msg;
while(死循環)
{
// you code......
//. ..........
// ........
GetMessage(&msg, NULL, 0, 0);
DispatchMessage(&msg);
}

这样作实际上是自己写程序管理了两个线程,自己程序和GetMessage/DispatchMessage各用多少CPU都需要分配好,如果自己的code是一次运行很长才到message哪里的话结果还是所有所有控件都不动了,反之如果Message太多这个循环也会影响Message的执行效率。感觉还是用已有的线程机制比较保险和结实。


http://myajax95./
2006-08-07 09:29
fox2g
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-7-17
得分:0 
谢谢大家,我已经用线程解决了
2006-08-08 16:47



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-80222-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.124645 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved