暂停几秒后,执行下一过程

zestsnake 2014-10-13 05:04:13
c# 写了个WINFORM的程序
简单说有2个按钮 CMD1 CMD2
想要实现这样的
点了CMD1后,等里面的程序全部运行完,停个5-10秒后,在调用CMD2里的程序,改怎么做呢?


thread.sleep(5000),好象不行
...全文
603 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2014-10-14
  • 打赏
  • 举报
回复
放一个timer,比如叫timer1,设置interval=5000 这么写: 在按钮1里面: //你的代码 ... timer1.Enabled = true; 在timer1_tick里面写 cmd2.PerformClick(); timer1.Enabled = false;
l2999019 2014-10-14
  • 打赏
  • 举报
回复
在你的Sleep前面加上这一句 Application.DoEvents();
QQ234788028 2014-10-14
  • 打赏
  • 举报
回复
private void cmd1_click(...) { ... Application.DoEvents(); Thread.Sleep(5000); //Thread.Sleep(5000)就是等待5秒后再执行后面的语句,为什么不行? cmd2_click(...); } private void cmd2_click(...) { ... }
於黾 2014-10-14
  • 打赏
  • 举报
回复
你怎么知道不行,断点跟了吗? 不要看输出结果 你执行sleep,阻塞了UI的刷新,所以界面假死,没有显示了,要等全部都执行完才会显示
feixuyue 2014-10-14
  • 打赏
  • 举报
回复
你的做法没错,但会造成ui界面的假死, 可以新开一个线程,串行就可以。
gxingmin 2014-10-13
  • 打赏
  • 举报
回复
private void cmd1_click(...) { ... Thread.Sleep(5000); //Thread.Sleep(5000)就是等待5秒后再执行后面的语句,为什么不行? cmd2_click(...); } private void cmd2_click(...) { ... }

110,565

社区成员

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

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

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