关于多线程

computerre 2010-11-17 05:10:40
初学多线程
建立个form,上面有两个按钮,每个按钮有他自己的事件处理程序,见下:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show("ok");

}

private void button2_Click(object sender, EventArgs e)
{

for (int i = 0; i < 20; i++)
{
MessageBox.Show(i.ToString());
}

}


现在的情况是如果按下button2,回显示20此messagebox里的内容,在显示完20次前如果点击button1其实是没有响应的,现在想用多线程来实现在点击button2后显示的20次message过程中若点击button1,则会响应它的事件。不知怎么做!
...全文
156 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
computerre 2012-12-20
  • 打赏
  • 举报
回复
谢谢谢啊谢啊谢谢啊
yanele 2010-11-17
  • 打赏
  • 举报
回复
好像是这么回事!
oioixiabings 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 luminji 的回复:]
Thread t1 = new Thread(new ThreadStart(delegate//定义一个新线线程,内容为大括号内的,delegate 为委托定义
{
for (int i = 0; i < 20; i++)
{
MessageBox.Show(i.ToString());
}
}));
t1.IsBackground = true;//设置该线程为后台运行线程
t1.start();//开始运行此线程
[/Quote]

已作了注释,请参考

phuai007 2010-11-17
  • 打赏
  • 举报
回复
楼上的楼上的楼上的代码我看不明白,有没有人注释下啊?
xiaoyukid 2010-11-17
  • 打赏
  • 举报
回复
支持楼上的楼上
  • 打赏
  • 举报
回复
Thread t1 = new Thread(new ThreadStart(delegate
{
for (int i = 0; i < 20; i++)
{
MessageBox.Show(i.ToString());
}
}));
t1.IsBackground = true;
t1.start();

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧