C 裡面的三種定時計時器 TImer

2021-09-28 15:48:26 字數 3002 閱讀 1465

timer控制項只有繫結了tick事件和設定timer.enabled = ture後才會自動計時,停止計時可以用stop()方法控制,通過stop()方法來啟動計時器。timer控制項和它所在的form屬於同乙個執行緒;

system.timers.timer類:定義乙個system.timers.timer物件,然後繫結elapsed事件,通過start()方法來啟動,通過stop()方法或者enadled = false停止計時。autoreset屬性是用來設定是否重複計時(設定為false只執行一次,設定為true可以多次執行)。在elapsed事件中繫結相當於另開了乙個執行緒,也就是說在elapsed繫結的事件裡不能訪問其他執行緒裡的控制項,但是可以通過定義委託,通過invoke呼叫委託訪問其他執行緒裡面的控制項。

定義該類時需通過建構函式進行初始化。

介面:

code:

using system;

using system.collections.generic;

using system.componentmodel;

using system.data;

using system.drawing;

using system.linq;

using system.text;

using system.windows.forms;

namespace timerdemo

private void frmmain_load(object sender, eventargs e)

private void timer_tick(object sender, eventargs e)

private void btn_start_click(object sender, eventargs e)

private void btn_stop_click(object sender, eventargs e)}}

設計介面:

/// 初始化timer控制項

///

private void inittimer()

///

/// timer類執行定時到點事件

///

///

///

private void timerup(object sender, system.timers.elapsedeventargs e)

catch (exception ex)

}///

/// 設定文字框的值

///

///

private void settextboxtext(string strvalue)

private void btn_start_click(object sender, eventargs e)

private void btn_stop_click(object sender, eventargs e)}}

設計介面:

/// 初始化timer類

///

private void inittimer()

///

/// 定時到點執行的事件

///

///

private void timerup(object value)

///

/// 給文字框賦值

///

///

private void settextboxvalue(object value)

///

/// 開始

///

///

///

private void btn_start_click(object sender, eventargs e)

///

/// 停止

///

///

///

private void btn_stop_click(object sender, eventargs e)}}

C 裡面的三種定時計時器 Timer

在.net中有三種計時器 1 system.windows.forms命名空間下的timer控制項,它直接繼承自componet。timer控制項只有繫結了tick事件和設定enabled true後才會自動計時,停止計時可以用stop 方法控制,通過stop 停止之後,如果想重新計時,可以用sta...

C 裡面的三種定時計時器 TIMER

在.net中有三種計時器 1 system.windows.forms命名空間下的timer控制項,它直接繼承自componet。timer控制項只有繫結了tick事件和設定enabled true後才會自動計時,停止計時可以用stop 方法控制,通過stop 停止之後,如果想重新計時,可以用sta...

C 裡面的三種定時計時器 Timer

在.net中有三種計時器 它直接繼承自componet。timer控制項只有繫結了tick事件和設定enabled true後才會自動計時,停止計時可以用stop 方法控制,通過stop 停止之後,如果想重新計時,可以用start 方法來啟動計時器。timer控制項和它所在的form屬於同乙個執行緒...