Geckofx45 黑屏問題解決+Delay延時

Geckofx黑屏的原因是每次重新加載要有一段繪圖時間,所以在繪圖沒有完成之前設置是否可見就OK

GeckoWebBrowser gk = new GeckoWebBrowser();
//做其他事情,比如Navigate
var baseWindow = ((nsIBaseWindow)(gk.WebBrowserFocus));
baseWindow.SetVisibilityAttribute(false);
寫個延時函數,讓gecko有足夠的繪圖時間,和sleep不同,sleep會卡死,Delay不影響程序響應

public static void Delay(int milliSecond)
{
    int start = Environment.TickCount;
    while (Math.Abs(Environment.TickCount - start) < milliSecond)
    {
        Application.DoEvents();
    }
}
然後給Delay()傳參,再執行baseWindow.SetVisibilityAttribute(true);,例如:

Delay(1000);//這裏單位是毫秒,該延時函數不會影響程序執行卡死,程序仍然可響應消息
baseWindow.SetVisibilityAttribute(true);
--------------------- 
作者:LIFECF 
來源:CSDN 
原文:https://blog.csdn.net/CFY530/article/details/80719118 
版權聲明:本文爲博主原創文章,轉載請附上博文鏈接!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章