C#的Timer的详细用法?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#的Timer的详细用法?相关的知识,希望对你有一定的参考价值。

C#的Timer的详细用法?如题,在C#中怎么用Timer在某些场合替代线程呢?请给示例

Timer,一个时间控件,平时不是很常用,当然也有例外的时候。
比如,要做出那种类似于QQ会员登陆Tips提示,就要用Timer和GDI+才能实现那种窗体渐变的效果。
Timer代替线程是不明智的选择。我也简单说说。
Timer只能在父窗体上用,做循环很占用资源,而且timer严格意义上来说还是属于单线程,一旦和程序运行有冲突的话可能会出现瓶颈,达不到thread这种效果。
Timer只是依靠Form消息来判断循环的,并不是线程,但是System.Timers.Timer 和 System.Threading.Timer 则都等同于线程.
参考技术A 为什么说timer只能在父窗体上使用?

timer.click+=myfunction;
timer.interval=1000;
timer.start;
timer.stop;
参考技术B import java.awt.Toolkit;
import java.util.Timer;
import java.util.TimerTask;

/**
* Schedule a task that executes once every second.
*/

public class AnnoyingBeep
Toolkit toolkit;

Timer timer;

public AnnoyingBeep()
toolkit = Toolkit.getDefaultToolkit();
timer = new Timer();
timer.schedule(new RemindTask(), 0, //initial delay
1 * 1000); //subsequent rate


class RemindTask extends TimerTask
int numWarningBeeps = 3;

public void run()
if (numWarningBeeps > 0)
toolkit.beep();
System.out.println("Beep!");
numWarningBeeps--;
else
toolkit.beep();
System.out.println("Time's up!");
//timer.cancel(); //Not necessary because we call System.exit
System.exit(0); //Stops the AWT thread (and everything else)




public static void main(String args[])
System.out.println("About to schedule task.");
new AnnoyingBeep();
System.out.println("Task scheduled.");

参考技术C C#编程软件里面有帮助文档,那里面可以查询任何一个关键词的用法 参考技术D 这个倒没听过,能代替线程,学习一下.

delphi timer用法

procedure TForm1.Timer1Timer(Sender: TObject);
begin
......;
end;
当属性里的ENABLE为FALSE时,这个过程的作用是什么?
什么情况下才会触发这个过程?

参考技术A 就是个定时器。Enabled就是开关,为False时这个东西就不工作了,里面的代码就不会被执行了。
它有个Interval属性,这个的单位是毫秒。当Enabled为True时,每隔Interval毫秒,就执行一次里面的代码。

比如,Interval设为1000,则每隔1000毫秒,里面的代码就被执行一次。本回答被提问者和网友采纳

以上是关于C#的Timer的详细用法?的主要内容,如果未能解决你的问题,请参考以下文章

详细说一下C#中using自动释放资源的用法

C# 计时器用法(DispatcherTimerSystem.Timers.TimerSystem.Threading.Timer)

DataGridView很详细的用法

DataGridView很详细的用法

C# 两个timer的 调用

DataGridView很详细的用法(转载)