定时器使用方法
1. System.Timers.Timer 定时器
-- 定义定时器变量
private System.Timers.Timer m_SetDataTimer;
-- 设置定时器间隔
private int m_SetDataTimerInterval = 1000;
--创建定时器
m_SetDataTimer = new System.Timers.Timer();
--设置添加方法
m_SetDataTimer.Elapsed += m_SendTimer_Elapsed;
--设置间隔时间
m_SetDataTimer.Interval = m_SetDataTimerInterval;
---开启定时器
m_SetDataTimer.Start();
---停止定时器
m_SetDataTimer.Stop();
---定时器方法
private void m_SendTimer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
---定时器要执行的内容
}
2.System.Threading.Timer;
---定义定时器变量
private System.Threading.Timer m_AutoConnectTimer;
---创建定时器
m_AutoConnectTimer = new System.Threading.Timer(AutoConnectTimer, null, 1000, 1000);
//参数1表示需要执行的回调方法;
//参数2表示传递给回调方法的object类型参数,可为null;
//参数3表示调用回调方法之前的延迟时间,可以让计时器第一次启动时回调方法延迟执行,单位毫秒;
//参数4表示调用回调方法的间隔时间,单位毫秒;
---定时器执行方法
private void AutoConnectTimer(object obj)
{
}
//暂停定时器
m_AutoConnectTimer.Change(-1, -1);
---销毁定时器
//停止定时器
if (m_AutoConnectTimer!= null)
{
m_AutoConnectTimer.Dispose();
m_AutoConnectTimer = null;
}
---更改定时器执行时间//启动定时器
m_AutoConnectTimer.Change(0, 2000);
//参数1表示调用回调方法之前的延迟时间,可以让计时器第一次启动时回调方法延迟执行,单位毫秒;
//参数2表示调用回调方法的间隔时间,单位毫秒;
WinForm控件提供的定时器
① 直接拖控件Timer,设置属性 Enabled=true(计时器运行);
Interval=1000(计时器触发时间,以毫秒计算),然后写触发事件就可以了;
private void timer1_Tick(object sender, EventArgs e)
{
this.label1.Text = DateTime.Now.ToString();
}
② 与第一种一样,只是不拖控件而已
private void Form1_Load(object sender, EventArgs e)
{
Timer timer1 = new Timer();
timer1.Interval = 1000;
timer1.Enabled = true;
timer1.Tick += new EventHandler(timer1EventProcessor);//添加事件
}
public void timer1EventProcessor(object source, EventArgs e)
{
this.label1.Text = DateTime.Now.ToString();
}