我现在用的是CDC类的FillSolidRect,MSDN上说它比FillRect要快。但我感觉仍然不够快,仅仅画一个矩形,拖动矩形移动时,矩形的更新速度依然有延迟。我想到的方法有:1 创建一个兼容DC,固定为白色。需要刷新HDC时,BitBlt(或StretchBlt);
2 FloodFill;
3 第一次刷为白色时,SaveDC,而以后需要刷为白色时,RestoreDC。但方法一并没有加快刷新速度;第二个和第三个方法没有作用。为什么会不起作用?另外,有没有更好、更快的方法把HDC刷为白色?HDC 刷新HDC刷新

解决方案 »

  1.   

    FillSolidRect感觉不错呀,一直在用这个,没想到更快的方式.
      

  2.   

    你的速度不在这个上面吧?这个都算慢你干脆不要windows编程了,可能是其他原因导致的慢,刷个颜色你肉眼肯定是看不出来的。你肯定是原窗口的背景也刷了一遍
      

  3.   

    当然,也有可能是其他方面出了问题。谁来帮个忙,win7下写个简单的工程,单文档中实现“鼠标拖动图形”功能,要求能实时刷新。vc,版本不限;也可以在xp下开发,在win7中运行。