我在窗體中有一個GUI元素,我希望它可以實時連續刷新,而不會使表單的其餘部分無響應。如何避免光標圖標自動更改?
我已將其刷新方法分配給以窗體的構造函數開頭的線程。
缺點是鼠標指針的圖標在「默認」和「AppStarting」圖標之間自動變化。
那麼,是否有辦法讓鼠標指針的圖標在刷新發生時不會自動更改,並讓它保留在其默認圖標上?
更新:新增revelent代碼:
的方法被稱爲:
private void WebRefresh()
{
try
{
for (int i = 0; i < i + 1; i++)
{
System.Threading.Thread.Sleep(100);
htmlCode = textBox1.Text;
File.WriteAllText(@"E:\New folder\Private\My Programs\Html Helper\Data\workingPage.html", textBox1.Text, Encoding.UTF8);
webBrowser1.Navigate(@"E:\New folder\Private\My Programs\Html Helper\Data\workingPage.html");
}
}
catch (IOException ex)
{
System.Media.SystemSounds.Hand.Play();
MessageBox.Show(ex.Message,ex.TargetSite.ToString());
}
}
線程初始化:
Thread WebPreview = new Thread(WebRefresh);
WebPreview.Start();
不允許從除創建它們的線程之外的線程修改GUI元素。 – adv12
您可以在另一個線程上執行任何類型的數據處理,但是要從該線程進行更新,您必須調用主GUI線程上的函數。如果你正在做處理,你會想單獨做,但如果你正在做的瘋狂的GUI的東西,你可能只是沒有效率的代碼。 –
告訴我們相關的代碼! – TaW