c# for循环 怎么样做才能让他隔一秒执行循环中的一步
比方说for(inti=0;i<8;i++){textBox1=i.ToString();}在第一秒的时候textbox中显示0,过一秒,textbox中显示2,再过一秒...
比方说for(int i=0; i <8 ;i++){textBox1=i.ToString();} 在第一秒的时候textbox中显示0,过一秒,textbox中显示2,再过一秒 显示3 这样以此类推 各位大侠有什么好办法么?
展开
1个回答
展开全部
1.可以用多线程做
private void Form1_Load(object sender, EventArgs e)
{
Thread t = new Thread(new ThreadStart(LoadForm));
t.Start();
}
private void LoadForm()
{
for (int i = 0; i < 9; i++)
{
Thread.Sleep(1000);
this.Invoke(new MyDelegate(SetRich), i.ToString());
}
}
delegate void MyDelegate(string str);//定义委托
private void SetRich(string str)//委托
{
textBox1.Text = str;
}
2.还可以用timer控件
private void Form1_Load(object sender, EventArgs e)
{
Thread t = new Thread(new ThreadStart(LoadForm));
t.Start();
}
private void LoadForm()
{
for (int i = 0; i < 9; i++)
{
Thread.Sleep(1000);
this.Invoke(new MyDelegate(SetRich), i.ToString());
}
}
delegate void MyDelegate(string str);//定义委托
private void SetRich(string str)//委托
{
textBox1.Text = str;
}
2.还可以用timer控件
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询