【发布时间】:2011-06-27 04:47:06
【问题描述】:
我正在使用自定义双缓冲,并想用DrawReversibleLine() 画一条橡皮筋线。但这怎么能做到呢?此方法直接绘制到屏幕上,所以我看不出如何在背景缓冲区上绘制。你会怎么做?
【问题讨论】:
标签: c# .net winforms doublebuffered
我正在使用自定义双缓冲,并想用DrawReversibleLine() 画一条橡皮筋线。但这怎么能做到呢?此方法直接绘制到屏幕上,所以我看不出如何在背景缓冲区上绘制。你会怎么做?
【问题讨论】:
标签: c# .net winforms doublebuffered
我会...用我的图像手动管理一个后台缓冲区,然后手动绘制它,然后在发生更改时在屏幕上使用橡皮筋,即拉动橡皮筋线的一端。
XOR-ed 线 (DrawReversibleLine()) 注定要与 ZX Spectrum 或 Hercules 图形一起消亡。
【讨论】:
您应该在前缓冲区中绘制:DrawReversibleLine 无需重新绘制缓冲区即可工作,您只需在同一位置重新绘制线条即可使其消失。这是一个很好的优化,允许您只绘制橡胶框whitout 来绘制整个场景,因此在屏幕上绘制 DrawReversibleLine 应该不是问题。
【讨论】: