请教关于代码延迟执行的好方法。

likess921 2010-08-05 05:08:37
void test()
{
if (autoregnum == 1)
{
if (List.Count != 0)
{
SendKeys.Send(List[0].ToString());
}

}

if (autoregnum == 2)
{
SendKeys.Send("123123");
}


if (autoregnum == 3)
{
SendKeys.Send("asdasd");
}

if (autoregnum == 4)
{
SendKeys.Send("k");
}

if (autoregnum == 5)
{
timer3.Enabled = false;
timer3.Stop();
}
}


不考虑使用timer来做。
使用 system.Threading.thread 和 Threading.Sleep()
但是问题出现,webBrowser1载入的页面,使用thread相关的方法延迟执行的时候,页面会有一个假死的情况出现(可以理解成延迟等待时间),这样会影响后续代码的执行。特别是自动填表单的时候。。。

请问有什么除了timer以外的好方法来做到延迟执行代码么?。。
...全文
219 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
denbes 2010-08-06
  • 打赏
  • 举报
回复
其实代码延迟就是在延迟的时间里执行其他的代码,到达时候后,才执行要执行的代码.
wuyq11 2010-08-05
  • 打赏
  • 举报
回复
public void Wait(int lMilliseconds)
{
int lTm = 0;
lTm = System.Environment.TickCount;
while (System.Environment.TickCount - lTm < lMilliseconds) {
if (_StopWait) {
break;
} else {
system.Threading.Thread.Sleep(500);
System.Windows.Forms.Application.DoEvents();
}
}
_StopWait = false;
lTm = null;
}
denbes 2010-08-05
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zhouzhangkui 的回复:]
C# code

private void timeDelay(int iInterval)
{
DateTime now = DateTime.Now;
while (now.AddMilliseconds(iInterval) > DateTime.Now)
{
}
……
[/Quote]
UP
jianuMan 2010-08-05
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 yaazz 的回复:]
试试使用线程,在线程中延时(Threading.Sleep())后调用方法
[/Quote]

赞同
Xiaoyuan245437 2010-08-05
  • 打赏
  • 举报
回复
Sleep???
yaazz 2010-08-05
  • 打赏
  • 举报
回复
试试使用线程,在线程中延时(Threading.Sleep())后调用方法
deknight 2010-08-05
  • 打赏
  • 举报
回复
sleep(1000)
q107770540 2010-08-05
  • 打赏
  • 举报
回复
用这么多的if
何不用swith case..
周药师 2010-08-05
  • 打赏
  • 举报
回复

private void timeDelay(int iInterval)
{
DateTime now = DateTime.Now;
while (now.AddMilliseconds(iInterval) > DateTime.Now)
{
}
return;
}
likess921 2010-08-05
  • 打赏
  • 举报
回复
if (autoregnum == 1)
{
SendKeys.Send("1111");
}
==延迟执行1秒===
if (autoregnum == 2)
{
SendKeys.Send("2222");
}
==延迟执行2秒===
if (autoregnum == 3)
{
SendKeys.Send("3333");
}
==延迟执行3秒===



如何能较好的达到上面这种延迟效果?

110,538

社区成员

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

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

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