Quantcast
Channel: CSDN博客推荐文章
Viewing all articles
Browse latest Browse all 35570

不要在OnPaint()中使用Invalidate()来刷新窗口

$
0
0

我从CEdit类派生了一个子类CMyEidt,然后在CMyEidt::中绘图,并使用了Invalidate()来使编辑框进行重绘。但却导致CPU的占用率很高,并且,如何没有采用双缓冲机制,图片还会不停的闪烁。如下图


注释掉Invalidate()后CPU占用恢复正常:


但是我在主对话框中调用Invalidate()却不会导致CPU出现这种情况,这是为什么?


谁能给我说说其中的原因吗?

网上说最好不要在OnPaint()中使用Invalidate()。

不要在OnPaint()中进行一些会占用软多CPU资源的操作,如打开文件,可以把这些操作放到InitXX()中。

作者:lp310018931 发表于2013-12-23 0:38:59 原文链接
阅读:142 评论:1 查看评论

Viewing all articles
Browse latest Browse all 35570

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>