Thread Thread1;
private void but_Click(object sender, EventArgs e)
{
if(Thread1==null || !Thread1.IsAlive)
{
Thread1 = new Thread(new ThreadStart(U1_LoadPvcPro));
Thread1.Start();//第一次进入按键时就开始线程
}
else
{
Thread1.Abort()//第二次进入按键时就结束线程
}
}
解决方案 »
- c#windows 服务程序来执行定时下载更新文件内容
- 熟练掌握.NET Framework(C#)是指什么?
- C#中取com端口句柄的方法
- 求一个数用如下条件(c#)
- Math.Round()的 BUG :四舍六入五留双
- 在一个winform上有一个lable控件,如何才能控制其从窗体的一端移动到另一个端,如此反复?
- 各位用C#写window form程序时,都用什么开发工具呢?
- C# 如何读取Winrar压缩的rar文件中的注释?
- C#中关于Winform窗体透明的那点事
- 高难度问题,如何监控某个进程的网络流量??
- 服务器上IIS6不支持AJAX脚本如何解决
- 大家帮帮我,急需sp1234的一段DEMO
你需要在线程里委托改变按钮的Text,启动时设置它为"停止",执行完毕时设置它为"开始"
否则按钮的文本不变,你点来点去的也没法知道后台线程到底运行了还是没运行
1,我上网查了查 发觉委托有很多种,不太会,可不可以给点码?(哈哈 可耻了)2,如果实在不行就传From的指针进去 用From指向but.text,这样也行吧?!
2,如果实在不行就传From的指针进去 用From指向but.text,这样也行吧?!
搜一搜:委托操作UI,能搜到一大堆
或者实在懒得研究,直接拖个timer进来,设置成100ms执行一次,里面判断线程的状态,并修改文本
Thread1.Abort()//第二次进入按键时就结束线程
}catch(ThreadAbortedException)
{}另外,想说一句,这已经什么年代了还用Thread, TPL都已经出来这么长时间了....