[英]smooth animation in C# with drawing calls
我正在嘗試在C#表單應用程序上制作平滑的動畫。
我基本上需要做的是調用一些繪圖函數來創建UI的布局。
我已經在網上查看並嘗試了許多替代方法,但是就可見閃爍而言,這些方法都沒有完全成功。
我已將表單屬性設置為:
this.SetStyle(ControlStyles.AllPaintingInWmPaint | ControlStyles.UserPaint | ControlStyles.OptimizedDoubleBuffer, true);
this.DoubleBuffered = true;
然后,我有一個單獨的線程來繪制菜單之一,將圖像存儲在位圖中的內存中,然后將結果打印在屏幕上。
Bitmap curBitmap = new Bitmap(200, 700);
Graphics tempGraph1;
tempGraph1 = Graphics.FromImage(curBitmap);
tempGraph1.FillRectangle(s1.color, r1);
tempGraph1.FillEllipse(s1.color, e1);
tempGraph1.FillEllipse(Brushes.White, c1);
formGraphT1.DrawImage(curBitmap, 0, timer1_count);
因此,即使每個周期只有一個DrawImage調用,仍然會出現一些閃爍。 像fps速率這樣的感覺受到限制,或者實際上根本沒有發生雙重緩沖。 有什么想法嗎?
謝謝
您是否嘗試過在繪圖前后調用SuspendLayout / ResumeLayout ?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.