日期:2014-05-18  浏览次数:20677 次

关于定时器的一个奇怪的问题。
我编写了一个俄罗斯方块,用System.timers.timer   dingshiqi     =   new   System.timers.timer(1000);做了一个定时器。
但是在dingshiqi.Elapsed+=new   System.Timers.ElapsedEventHandler(DownEvent);
里面的DownEvent怎么在一个时间间隔里面(1000毫秒)执行的次数不是一定为一次?
有时候多次,有时候一次。而且一但是一次后,就固定下来为一次了,不会再
回到多次。
请问这是什么原因,该如何控制使在一个时间间隔里面只调用一次DownEvent;

------解决方案--------------------
为什么不用System.Windows.Forms.Timer 使用它的Tick event
------解决方案--------------------
在Tick event事件里加判断呀。
------解决方案--------------------
开始时将定时器的Enable属性设为False
设一个按钮(如开始),当点击这个按钮时打开计时器,即将Enable属性设为True.