VC6-GDI+

所属分类:图片显示
开发工具:Visual C++
文件大小:1527KB
下载次数:980
上传日期:2008-12-07 01:59:14
上 传 者countryboy
说明:   这段时间在研究GDI+双缓冲的方法,在网上找了很多时间都没有找到合适的示例,特别是针对VC6的。后来通过对网上资料的分析,和对SDK,MFC的学习,实现了VC6下GDI+双缓冲的效果,把它写出来与大家分享,希望可以找到更好地实现方法。 想必大家对双缓冲的原理有了一定的了解,以前我也做过GDI双缓冲的项目,网上的示例也很多,后来做GDI+的时候有些盲目,其它原理知道了,就该学习GDI+的绘制方法了。 GDI+的一个优点就是可以直接使用jpg图像,在这个示例中,我没有把图像文件放在资源中,而是动态读取,一是由于项目需求,图像数目是未知的;二是由于动态读文件效率低下,使用双缓冲更能体现出优势。 在实现过程中,犯了一个错误,把读图像的方法放在了OnDraw之中,后来发现拖动滚动条闪烁的很严重,原因在于ScrollBar拖动时会产生消息激活OnDraw,这样的话,每拖动滚动条就读一次文件,重绘一次,效率当然低下了! 我的实现方式是:更换图像后调用UpdateAllViews,内存DC的绘制都放在OnUpdate中操作,在内存绘制好后再在屏幕中贴图,如果大家有更好的方法,请写出来分享。
(err)

文件列表:
VC6下的GDI+双缓冲 (0, 2008-02-29)
VC6下的GDI+双缓冲\Debug (0, 2008-02-29)
VC6下的GDI+双缓冲\GDIPlusDBB.clw (2343, 2007-12-27)
VC6下的GDI+双缓冲\GDIPlusDBB.cpp (4281, 2007-12-27)
VC6下的GDI+双缓冲\GDIPlusDBB.dsp (4639, 2007-12-27)
VC6下的GDI+双缓冲\GDIPlusDBB.dsw (543, 2007-12-27)
VC6下的GDI+双缓冲\GDIPlusDBB.h (1400, 2007-12-27)
VC6下的GDI+双缓冲\GDIPlusDBB.rc (11898, 2007-12-27)
VC6下的GDI+双缓冲\GDIPlusDBBDoc.cpp (2702, 2007-12-27)
VC6下的GDI+双缓冲\GDIPlusDBBDoc.h (1665, 2007-12-27)
VC6下的GDI+双缓冲\GDIPlusDBBView.cpp (4240, 2007-12-27)
VC6下的GDI+双缓冲\GDIPlusDBBView.h (2150, 2007-12-27)
VC6下的GDI+双缓冲\MainFrm.cpp (2511, 2007-12-27)
VC6下的GDI+双缓冲\MainFrm.h (1581, 2007-12-27)
VC6下的GDI+双缓冲\res (0, 2008-02-29)
VC6下的GDI+双缓冲\res\GDIPlusDBB.ico (1078, 2007-12-27)
VC6下的GDI+双缓冲\res\GDIPlusDBB.rc2 (402, 2007-12-27)
VC6下的GDI+双缓冲\res\GDIPlusDBBDoc.ico (1078, 2007-12-27)
VC6下的GDI+双缓冲\res\Toolbar.bmp (718, 2007-12-27)
VC6下的GDI+双缓冲\resource.h (738, 2007-12-27)
VC6下的GDI+双缓冲\StdAfx.cpp (212, 2007-12-27)
VC6下的GDI+双缓冲\StdAfx.h (1225, 2007-12-27)

本程序示例了GDI+双缓冲的实现方法 作者:闫杰 网名:yanjie2500 / 中华阁 QQ: 86822307 手机:13486519697 地址:浙江绍兴 希望和中国的程序员一起进步! 〔概要〕 这段时间在研究GDI+双缓冲的方法,在网上找了很多时间都没有找到合适的示例,特别是针对VC6的。后来通过对网上资料的分析,和对SDK,MFC的学习,实现了VC6下GDI+双缓冲的效果,把它写出来与大家分享,希望可以找到更好地实现方法。 想必大家对双缓冲的原理有了一定的了解,以前我也做过GDI双缓冲的项目,网上的示例也很多,后来做GDI+的时候有些盲目,其它原理知道了,就该学习GDI+的绘制方法了。 GDI+的一个优点就是可以直接使用jpg图像,在这个示例中,我没有把图像文件放在资源中,而是动态读取,一是由于项目需求,图像数目是未知的;二是由于动态读文件效率低下,使用双缓冲更能体现出优势。 在实现过程中,犯了一个错误,把读图像的方法放在了OnDraw之中,后来发现拖动滚动条闪烁的很严重,原因在于ScrollBar拖动时会产生消息激活OnDraw,这样的话,每拖动滚动条就读一次文件,重绘一次,效率当然低下了! 我的实现方式是:更换图像后调用UpdateAllViews,内存DC的绘制都放在OnUpdate中操作,在内存绘制好后再在屏幕中贴图,如果大家有更好的方法,请写出来分享。

近期下载者

相关文件


收藏者