默认情况下,Windows控件没有DoubleBuffer。当我使用它时,我可以减少闪烁。为什么在Windows控件中默认不使用它。
在控制中使用DoubleBuffer时,任何人都可以说出优点和缺点。
感谢。
答案 0 :(得分:1)
当我们想要创建的绘图有很多细节时使用双缓冲技术,即使使用快速计算机绘制也很费时。在这种技术中,不是在屏幕上绘图,而是首先绘制成图像然后画在窗户上的图像。
WinForms的目的是首先使用UI元素(ComboBox,TextBox等)创建表单,这就是为什么它默认不使用Double Buffering。
双缓冲用于图形开发。
所以......双缓冲使用更多内存但速度更快,没有多少图纸时无需使用它
希望这有帮助!
答案 1 :(得分:0)
双缓冲是一种使用的技术 制作图纸密集型应用程序 更快,通过减少显得更顺畅 闪烁。基本的想法是采取 绘画操作用来画你的 申请并将其应用于 离屏画布。一切都结束了 绘图操作已经完成,这个 然后'推出屏幕外画布 前进到表面 - 或绘制为 将单个图像放到控件上。这个 给用户一个外观 更快的应用程序。
DoubleBuffer是内存密集型的,如果你的系统内存较少,那么你可能会遇到内存崩溃的问题。
关于双重的最后考虑 这里描述的缓冲思想就是这样 这既没有完全优化,也没有 没有它的缺点。而 双缓冲是一个很好的方法 减少Windows的闪烁 形式绘画,它是记忆 密集。基本上,使用两次 有效的记忆: 应用程序的屏幕图像以及 屏幕外图像。也, 动态创建一个Bitmap对象 对于每一个油漆事件都非常 使用的昂贵 Graphics.DrawImage推送 屏幕外的图像到表面 形成。 DoubleBuffer控件样式 执行所有这些优化 通常是最有效的方式 做双缓冲。
您可以阅读有关此here
的更多信息