1. 程式人生 > >Winform刷新時界面假死、閃爍

Winform刷新時界面假死、閃爍

edr 動作 active info 設置 機器 zed 閃爍 use

1.界面假死

開啟新的線程做一些計算操作,只有更新控件時才委托給Form線程更新界面。

2.Winform刷新時閃爍
一般的
this.SetStyle(ControlStyles.UserPaint | ControlStyles.AllPaintingInWmPaint | ControlStyles.OptimizedDoubleBuffer | ControlStyles.ResizeRedraw, true);
設置雙緩沖、延時刷新

OCC時,機器人動作頻繁刷新畫面時,把form.Paint聲明為public直接調用。
註:調用Refresh、Invalidate、Update都是在調用Paint事件前先清空在繪制,所以會有閃爍。

OCC更新TopoDS對象等不需要放在Form的線程中執行,因為更新的是AIS_InteractiveObject,並不是畫面。

Winform刷新時界面假死、閃爍