【发布时间】:2018-04-28 08:20:18
【问题描述】:
使用 Winforms,我需要延迟事件 timer1_Tick 本身的执行,或者也可能延迟 timer1.Start()。
我不知道如何正确地做到这一点。谁能给个建议?
【问题讨论】:
标签: c# winforms events timer delay
使用 Winforms,我需要延迟事件 timer1_Tick 本身的执行,或者也可能延迟 timer1.Start()。
我不知道如何正确地做到这一点。谁能给个建议?
【问题讨论】:
标签: c# winforms events timer delay
只需将 Thread.Sleep 放在处理事件之前
public void Timer1_tick(...){
System.Threading.Thread.Sleep(1000);
}
或者如果你需要延迟 timer1.Start() 的执行
System.Threading.Thread.Sleep(1000);
timer1.Start();
【讨论】:
1.) 使用另一个计时器(“帮助器”)在第一个滴答时启动预期计时器,然后停止此帮助器计时器。 2.) 计算计时器的滴答声,仅在滴答计数超过限制后执行事件处理程序代码:
此示例仅在前 100 个滴答声后启动事件处理程序代码:
int tickCount;
public void Timer1_tick(...)
{
if( tickCount++ < 100 ) return;
// Do something...
}
【讨论】: