首页 新闻 会员 周边

Timer定时器怎么就启动就执行一次啊?

0
悬赏园豆:5 [已解决问题] 解决于 2013-03-26 23:13

设置了间隔为5S,Timer每次都是启动后过5S才执行,

怎么让定时器启动后就执行一次,然后每5S执行一次啊?

吴顶天的主页 吴顶天 | 初学一级 | 园豆:39
提问于:2013-03-15 17:04
< >
分享
最佳答案
0

用System.Threading.Timer,http://msdn.microsoft.com/en-us/library/2x96zfy7(v=vs.102).aspx  第三个参数如果设置为0,就表示马上启动

收获园豆:5
陈希章 | 老鸟四级 |园豆:2538 | 2013-03-15 21:09
其他回答(4)
0

你的思路有问题,可以这么做:

private void Form1_Load(object sender, EventArgs e)
{
    doSomething();
    timer1.Enabled=true;  
}

private void timer1_Tick(object sender, EventArgs e)
{

  doSomething();

}

private void doSomething()
{
   //      
}
Rophie | 园豆:216 (菜鸟二级) | 2013-03-15 17:17

同意楼上

支持(0) 反对(0) 会长 | 园豆:12401 (专家六级) | 2013-03-15 17:24

这样做貌似看起来很怪啊,没有其他办法了吗

支持(0) 反对(0) 吴顶天 | 园豆:39 (初学一级) | 2013-03-15 17:24

@Dellienware: 你用的哪个Timer,看看有没有设置立即执行的属性,我几个有个Timer可以设置,忘了哪个了.....

支持(0) 反对(0) 会长 | 园豆:12401 (专家六级) | 2013-03-15 17:57
0

C#里有好几个Timer

会长 | 园豆:12401 (专家六级) | 2013-03-15 17:57
0

Timer定时器有好几个父类,如果是窗体WinFrom的话,Timer默认是不启动的,需要将其可用性属性设为True。要是在web中Timer默认也是可用状态,不用手动启动。

伏草惟存 | 园豆:1420 (小虾三级) | 2013-03-15 18:01
0

使用System.Threading.Timer,用Change()方法动态改变间隔时间就好

滴答的雨 | 园豆:3660 (老鸟四级) | 2013-03-15 19:35
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册