我们绘图的时候,有时会一闪一闪的,这时可以用双缓冲绘图,以避免闪烁。
首先,应该要有一个原本显示的DC,这个我们可以通过一些函数如GetDC()得到。
其次,还要有一个用来在后台画的DC,这个可以通过CreateCompatibleDC()这个函数创建这个内存DC。
然后,还要有一个位图对象,这个通过LoadImage()加载图片或CreateCombatibleBitmap()来建立一个位图,他们的返回值就是我们想要的位图对象。
接下来,用SelectObject()来将我们的内存DC与位图对象连接起来,这样我们才可以进行绘图。
此处省略绘图的一些步骤。。。
最后,通过调用BitBlt()或者TransparentBlt()来把画在内存DC上的图与原有的进行一次性对换,这样就不会造成闪烁了。
至于例子的话,可以看下我的一篇关于自绘按钮的那篇博客,这里就不上代码了。
windows编程学习之路--双缓冲绘图
最新推荐文章于 2024-05-01 23:48:49 发布