mfc 想让窗体不断重画 程序就死 画面定格不动了

一个单文档mfc应用程序(有view和Doc类)在菜单里加了一项“运行”,其处理函数,就是引起view类的不断重画类似while(--i>0)//i是一个很大的数,如:1... 一个单文档mfc应用程序(有view和Doc类)
在菜单里加了一项“运行”,其处理函数,就是引起view类的不断重画
类似
while(--i>0) // i是一个很大的数,如:100000
{
...;
Invalidate(); //这两句就是想让view类重画
UpdateWindow();
}

view类中,onDraw就是画一幅图
当“运行”时,闪烁的非常厉害,十有八九会死掉,
而且,当还在“运行”时,若进行拖动,改变窗体大小,最大化等其它引起重画的操作时,程序基本上会死。
说明:我的程序死是指,在view类窗体上看不到它重画了(不闪烁了),定格在一个画面上。程序内部还是能正常运行。结束后,让窗体重绘一下,最后一次画面是对的(说明程序运行正确)。
所以感觉问题是:程序一直要重绘,OnDraw函数一直被调用,它反应不过来了???
如何让这个重绘过程一直跟上,从而让我看到不断变化的图,不要闪烁的太厉害最好了????
诚望赐教!!!
展开
 我来答
dukang9904455
2011-06-16 · TA获得超过811个赞
知道小有建树答主
回答量:1028
采纳率:0%
帮助的人:945万
展开全部
while(--i>0) // i是一个很大的数,如:100000
{
...;
Invalidate(); //这两句就是想让view类重画
UpdateWindow();
Sleep(50);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
400zclkuu
2011-06-16 · TA获得超过2938个赞
知道大有可为答主
回答量:4768
采纳率:16%
帮助的人:1587万
展开全部
你应该把画图的函数放在响应ON_PAINT这个消息的函数里调用,就可以了。这样系统在每次重绘窗口的时候会自动调用那个重画的函数对界面进行刷新
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式