Paint .NET如何使用C#快速绘制?示例:在拖动鼠标时没有任何可见延迟的情况下绘制椭圆周长。在C#中使用简单的Windows窗体应用程序如果使用Picturebox的MouseMove事件并根据鼠标位置绘制一个椭圆,则会有很多延迟和闪烁!那么,他们如何顺利地做到这一点?
答案 0 :(得分:4)
我对Paint.Net代码没有特别的了解,但很可能是使用Double Buffering,并且可能是在自定义绘图表面上手动实现,而不是预打包控件中的简单实现。
答案 1 :(得分:4)
Paint.NET在调用Invalidate()后调用Update(),强制立即同步WM_PAINT。
答案 2 :(得分:2)
要获得平滑的绘图,您应该:
在这种情况下,最好的方法是使用双缓冲 - 它支持.NET框架中的“开箱即用”,只需要很少的工作,并且可以消除闪烁。
答案 3 :(得分:0)
他们可能使用WPF。它比形式快得多。