作者ho2002 (批踢踢特侦组)
看板Visual_Basic
标题[.net] 请教高手 .net Timer 的问题
时间Tue Jun 5 18:59:51 2012
例如 Timer 的 interval 设定成 5000
执行後 会先等5000毫秒完才做Timer里头的事情
有什麽办法才能变成先做,再等5000毫秒
我目前的想法是把 Timer 里头的东西先挪出来变成一个 sub
启动Timer前先去 call 该 sub ,可是这样做蛮不直觉的
请教各位前辈 m(_ _)m 这问题困扰我好久了
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.121.156.225
※ 编辑: ho2002 来自: 59.121.156.225 (06/05 19:00)
1F:→ MOONRAKER:你的方法正确,没什麽不直觉的。 06/05 19:07
好像有点复杂耶 *_*
3F:→ love2010:你的方法OK阿 06/06 03:14
4F:推 fumizuki:直接call timer的事件sub就好了啊 06/06 06:51
对,我原先也是这种做法,但非常奇怪的是
假设我的 Timer interval 为 5000 毫秒
我先 Call Timer(Nothing,Nothing) //先做Timer的事情
然後再 Timer.Enabled = True //启动
执行会变成...
[Timer],延迟5000毫秒,[Timer]、[Timer]、[Timer]、[Timer].........loop
^ ^^^^^^^^^^^^
call 问题在此...为何还是有延迟
5F:推 fumizuki:是你call事件的位置放错地方 而被一直重复执行了吧 06/07 12:55
我的问题是为什麽先使用call sub之後 还是会有5000毫秒延迟
※ 编辑: ho2002 来自: 59.121.156.225 (06/07 13:58)
6F:→ MOONRAKER:你等於手动触发一次timer tick事件 06/07 16:45
7F:→ MOONRAKER:(好像没这个名称的事件;反正就是时间到的那个事件) 06/07 16:45
8F:→ MOONRAKER:还是执行到constructor...越看越奇怪 06/07 16:46