我从CEdit类派生了一个子类CMyEidt,然后在CMyEidt::中绘图,并使用了Invalidate()来使编辑框进行重绘。但却导致CPU的占用率很高,并且,如何没有采用双缓冲机制,图片还会不停的闪烁。如下图
注释掉Invalidate()后CPU占用恢复正常:
但是我在主对话框中调用Invalidate()却不会导致CPU出现这种情况,这是为什么?
谁能给我说说其中的原因吗?
网上说最好不要在OnPaint()中使用Invalidate()。
不要在OnPaint()中进行一些会占用软多CPU资源的操作,如打开文件,可以把这些操作放到InitXX()中。
作者:lp310018931 发表于2013-12-23 0:38:59 原文链接
阅读:142 评论:1 查看评论