织梦CMS - 轻松建站从此开始!

罗索

C++/GDI+ 学习笔记(四)——实用技巧——双缓冲(Double Buffer)

jackyhwei 发布于 2010-04-27 10:58 点击:次 
双缓冲在GDI+里可以有效的提高描画效率。改善显示的质量。 下面的代码是一个最简单的双缓冲的模板。可以根据需要,做简单的修改即可。
TAG:

  双缓冲在GDI+里可以有效的提高描画效率。改善显示的质量。

  下面的代码是一个最简单的双缓冲的模板。可以根据需要,做简单的修改即可。

  1.       Bitmap CacheImage( [Width], [Height] );  
  2.       Graphics CacheGraphics( &CacheImage );  
  3.    
  4.       // 对CacheImage进行描画  
  5.       // ......  
  6.         
  7.       // 获得窗口的Graphics对象  
  8.       Graphics Graphic( [ Window’s HDC ] );  
  9.    
  10. // 将描画好的CacheImage画到窗口上  
  11.       Graphic.DrawImage( &CacheImage, [Left], [Top] );  

根据一些简单的测试,双缓冲可以有效的改善图像的处理速度。不过最明显的效果还是降低画面的闪烁程度。

另外还可以使用CachedBitmap类来做双缓冲。Graphic也有专门的DrawCachedBitmap方法来描画CachedBitmap。但没有上述的方法灵活。
 

(eplanet)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net/a/201004/9276.html]
本文出处:CSDN博客 作者:eplanet
顶一下
(2)
40%
踩一下
(3)
60%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容