双缓冲怎样解决列表控件闪烁问题  

在线阅读下载全文

作  者:何黎明 

出  处:《电脑编程技巧与维护》2005年第10期88-90,共3页Computer Programming Skills & Maintenance

摘  要:在MFC中,主要是在OnPaint中进行绘图,还有一种是在OnDraw中绘图,其实OnDraw也是OnPaint调用的。当窗口需要重绘时,系统会先用背景色擦掉当前的图形,然后再将图形绘制上去。当背景色和窗口的颜色差别比较大,而在短时间内这两种颜色交替出现时,闪烁就出现了。假如让系统不用背景颜色进行擦除,那么闪烁就不会出现了。但这个时候因为前面绘制的图形没有擦除,后来的图形又叠加上去了,画面就会一团糟了。解决这个问题就要使用双缓冲技术。双缓冲的基本原理就是,将图形绘制在内存中,当系统要重绘时,将内存中的图形用BitBlt函数一次性输出到屏幕上,这个过程非常的快,根本不会出现闪烁,在Windows的DirectX游戏开发包中也是使用了类似的技术,叫做Flip Surface,不过由于DirectX直接对硬件操作,速度更快。下面具体讲解该技术。

关 键 词:双缓冲技术 闪烁 列表控件 DIRECTX BITBLT函数 Windows Surface 图形绘制 背景颜色 

分 类 号:TP311.13[自动化与计算机技术—计算机软件与理论] TS803[自动化与计算机技术—计算机科学与技术]

 

参考文献:

正在载入数据...

 

二级参考文献:

正在载入数据...

 

耦合文献:

正在载入数据...

 

引证文献:

正在载入数据...

 

二级引证文献:

正在载入数据...

 

同被引文献:

正在载入数据...

 

相关期刊文献:

正在载入数据...

相关的主题
相关的作者对象
相关的机构对象