c#实时循环检测数据变化去出发事件
private void timer3_Tick(object sender, EventArgs e)//timer控件间隔1秒执行,
{
i=textBox1.text;
if (test.text.ToString() == "0") //判断test中的值是不是为“0”
{
chan6_raw = raw_ch6(p1);//重载 p1
timer3.Stop();//关闭timer
timer5.Start();//启动timer 总计用了60个timer,启动一个,关闭一个,
}
}
public ushort raw_ch6(ushort p1)//重载函数 返回值p1
{
switch (i)
{
case "0": p1 = 1056; break;
case "1": p1 = 1106; break;
//default: p1 = 1116; break;
}
return p1;
}
现在的问题是,60个timer启动一个关闭一个,代码长度很大,timer控件只能执行一次(控件本身决定),能不能有其他方法呢,实时循环的 检测呢。谢谢大神 哥哥 大神姐姐 。
------解决方案--------------------之所以使用定时器,是因为可能需要每隔一段时间去检测某种事物的状态,即便开60个定时器,也许目的就是一个监测状态,那为什么不能用一个定时器去实现呢?
可以把监测的对象整个过程视为任务,开个定时器监测所有任务的状态就可以了,知道满足合适的条件为止,无需开那么多定时器
------解决方案--------------------开一个timer,把需检测标记放到数组里,然后遍历数组,根据检测标记执行需要的操作
------解决方案--------------------http://bbs.csdn.net/topics/380095904