线程休眠如何没用
线程休眠怎么没用!C# codeprivate void button1_Click(object sender, EventArgs e){for (int i 1 i
线程休眠怎么没用!
C# code private void button1_Click(object sender, EventArgs e) { for (int i = 1; i < 1000000; i++) { label1.Text = i.ToString(); Thread.Sleep(1000); } }
为什么实现不了label上面一个个显示循环值。
求大神解释.....
[解决办法]Thread.Sleep(1000);
上面加一行
Application.DoEvents();
[解决办法]label1.Text 赋值,不是立即重绘 而是向 GUI 线程消息队列发送了要求重绘的消息,而只有 for 循环结束了也就是鼠标点击消息处理完了才能取得该重绘消息,加上 Application.DoEvents() 就强制去取得刚才发出的重绘消息来处理。