天天看點

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 

版權聲明:本文為部落客原創文章,轉載請附上博文連結!