我想連續顯示和隱藏標籤(在for循環中使用sleep)。這是我在做什麼:連續顯示並隱藏Windows窗體中的標籤
for (i = 0; i < 25; i++)
{
label1.Visible = true;
Thread.Sleep(1000);
label1.Visible = false;
Thread.Sleep(2000);
}
但是,上述代碼不能按預期方式工作。我根本看不到標籤。任何想法如何實現這一
我想連續顯示和隱藏標籤(在for循環中使用sleep)。這是我在做什麼:連續顯示並隱藏Windows窗體中的標籤
for (i = 0; i < 25; i++)
{
label1.Visible = true;
Thread.Sleep(1000);
label1.Visible = false;
Thread.Sleep(2000);
}
但是,上述代碼不能按預期方式工作。我根本看不到標籤。任何想法如何實現這一
使用Thread.Sleep
凍結的Windows您選擇界面,你必須運行一個分開的胎面或使用定時器,該爲你做 例子:
void blinkLabel()
{
int blink_times = 25;
System.Windows.Forms.Timer timer1 = new System.Windows.Forms.Timer();
timer1.Interval = 1000;//every one second
timer1.Tick += new System.EventHandler((s, e) =>
{
if (blink_times >= 0)
{
label1.Visible = !label1.Visible;
blink_times--;
}
else
{
timer1.Stop();
}
}
);
timer1.Start();
}
對不起,互聯網連接丟失了一段時間。謝謝。請試試看並回復 –
非常感謝。有用!我學到的一點 - 從不在表單的主線程中使用Sleep –
什麼是使用'主題的目的。睡眠(1000)'? –
使用'定時器'組件並更改每個滴答的可見性:'label1.Visible =!label1.Visible;' – ASh