当前位置:
工控论坛
> >
产品
>
自动化软件
>
高级语言开发
我要发帖
VC中如何终止循环
点击:
517
| 回复:
3
changhuaiaq
关注
私信
精华:0帖
求助:0帖
帖子:3帖 | 0回
年度积分:0
历史总积分:9
注册:2008年6月16日
发表于:2008-06-16 16:09:52
楼主
一个按钮start启动循环,
void btnstart()
{ abc=true;
while(abc)
{
//循环体
}
}
另一按钮stop终止循环
void btnstop()
{abc=false;}
我用全局变量volatile bool abc来控制,好像不行。
但用线程间通信可以解决终止循环的问题。
void btnstart()
{
CWinThread *xunhuan=AfxBeginThread( Wxunhuan,&pParam,THREAD_PRIORITY_NORMAL,0,CREATE_SUSPENDED);
xunhuan->ResumeThread();
}
UINT Wxunhuan(LPVOID pParam)
{abc=true;
while(abc)
{
//循环体
}
}
此时按下按钮stop可以跳出循环。请问为什么?能不能不用线程也能实现?
分享到:
收藏
邀请回答
回复楼主
举报
jqc304
关注
私信
精华:0帖
求助:0帖
帖子:5帖 | 17回
年度积分:0
历史总积分:24
注册:2004年11月19日
发表于:2008-06-16 16:47:18
1楼
用引用,在全局变量abc前加取地址符&试试,
回复
引用
举报
蜡笔小新不吃青椒
关注
私信
精华:0帖
求助:0帖
帖子:31帖 | 680回
年度积分:0
历史总积分:1240
注册:2007年10月18日
发表于:2008-06-19 14:34:47
2楼
用系统消息机制,这种无时序要求的消息发送和捕捉很方便
其实开线程时间片方式也是很好的
回复
引用
举报
zsbs
关注
私信
精华:0帖
求助:0帖
帖子:6帖 | 145回
年度积分:1
历史总积分:234
注册:2003年11月27日
发表于:2008-06-30 19:11:03
3楼
在循环体内加上消息驱动
回复
引用
举报
热门招聘
相关主题
wincc的vbs内部函数 HMIRunt...
[8584]
工控软件新品--TRACE MODE
[3049]
电气绘图软件 PCschematic 7...
[2046]
TRACE MODE在分布式可视信息...
[2442]
VB环境下设计开发实时数据采...
[2709]
工控初学者不要“太贪”
[3155]
wincc 函数求助
[3040]
组态软件教程
[3143]
送三菱仿真软件,免费
[9042]
您的组态软件还在使用脚本程...
[7391]
官方公众号
智造工程师
客服
小程序
公众号