使用timer控件创建一个简单的报警程序

原创 2003年10月09日 22:20:00

简介:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

       当我使用计算机工作时,我总是如此的专心致志,以至于每当我过了一会儿去看时间时,发现已经过了三个小时,而我却完全没有意识到!所以我决定使用我从Code Project学来的C#技术,来创建一个简单的应用程序使用Timer 对象来倒计时一个由我自己设定的时间,并一直循环播放一段wave音乐,直到你重设timer控件。

 

Timer对象基础

       首先你要知道的是,使用Timer对象你需要访问如下命名空间:

       接下来,介绍一下创建一个Timer的要点以及为这个timer对象的Elapsed事件设定事件委派。

       先创建一个Timer对象,这里我定义我使用的timertimerClock接下来设定Elapsed事件委派,当事件被触发时,指定的委派将被调用,这里我定义我使用的委派名称为OnTimer()

       接着,设定Interval属性,使用毫秒数值指示希望Elapsed事件被调用的间隔,这意味着,当我定义Interval属性为1000毫秒时,我定义的委派OnTimer()将每隔1000毫秒被调用一次,或者说是每隔1秒。

       最后,需要设定Enabled属性为true,以使这个timer对象开始工作。接下来,剩下的只是一个小问题创建一个委派,在这个timer对象的Elapsed属性被触发时调用。如果你以前没有使用过委派,不用担心,它们很容易使用,只需要创建一个方法,用来接收适合你捕获事件的一些变量。

       针对Elapsed事件,这个委派需要接收一个普通对象和一个ElapsedEventArgs对象。

 

在报警程序中使用Timer控件

       好的,介绍了这些基础,现在,我们来看在实际应用中的代码。注意,这里并不包括播放wave音乐和显示最小化图标的代码,完整的代码你可以在那个demo项目中看到,基本上我是直接从jow Blow撰写的《Low level audio players》中粘贴的播放wave的代码。

       在下面的代码中,你可以看到,我将实例化Timer对象的方法放在我自己的初始化方法InitializeTimer()中,这个方法将被类构造调用。并且我创建了两个方法,inputToSeconds()secondsToTime()用来将字符串格式的时间格式转换为正型,以及一个反处理过程。这些方法只是用来帮助我们在TextBox控件中显示日期格式,这在整个应用的结构中,并不十分重要。其他的那些代码,是标准的Visual Studio.NETWin Form程序生成的样板文件。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

代码参考

实际的执行代码比上面的要多,但demo中关于播放wave音频的代码是取自Ianier Munoz关于A low-level audio player in C#一文,顺便一提,Ianier Munoz编写的播放wave的这个类十分便于使用和重用。

 

总结

       这个应用程序演示了timer在实际环境中的一个简单应用,仅仅使用了一些简单的基础知识来创建一个简单的应用,我希望在我之后有人能给出它的更多更好的用法。

使用 timer 来创建一个简单的报警程序

参考地址:http://www.dingos.cn/index.php?topic=360.0介绍当我在电脑前工作时,我常常感到时间一眨眼就过了好几个小时而自己却没有感觉到。所以我决定编写一个简单...
  • huijianight
  • huijianight
  • 2010年06月15日 09:28
  • 367

C#中Timer控件的使用用法

本来以为控件差不多学完了,结果今天偶尔发现只是学了Common Device Controls,在All Device Controls里还有一些其他的控件没看。不过大部分也不是太实用,我觉得Time...
  • u011786432
  • u011786432
  • 2013年08月23日 07:51
  • 3841

Timer控件各种使用方法

timer控件的常用属性     1:Timer.Enabled 属性用于设置是否启用定时器     2:Timer.Interval 属性,事件的间隔,单位毫秒     3:Timer.El...
  • wssbwpp
  • wssbwpp
  • 2012年05月07日 11:13
  • 5724

Timer控件的简单应用

C#的Timer控件使用很简单: 1.添加一个
  • u012370255
  • u012370255
  • 2014年05月28日 10:24
  • 1666

QT编程入门--用代码创建简单的窗口

你在看这篇文章的时候,需要对C++有一定的了解。 首先我们用QT建立一个空的qt4项目,然后添加头文件MessageButDlg.h内容如下:#ifndef MESSAGEBUTDLG_H#defin...
  • wesleyluo
  • wesleyluo
  • 2010年04月12日 09:03
  • 3835

VB.Net Timer 控件的用法

为了研究VB.Net Timer 控件的用法,做了个计时器。 最后发现用途很广泛,例如说通过本软件精确的统计到今天晚上洗澡用去了21分52秒,类似的用途很有很多,本程序使用VS2005开发,需要.n...
  • gjj202008
  • gjj202008
  • 2012年03月07日 11:24
  • 2435

3个Timer(System.Threading.Timer,System.Windows.Forms.Timer,System.Timers.Timer)的区别

基于服务器的计时器允许指定在应用程序中引发事件的重复时间间隔。然后可通过处理这个事件来提供常规处理。例如,假设您有一台关键的服务器,必须保持一周 7 天、一天 24 小时连续运行。您可以创建一个服务,...
  • aptentity
  • aptentity
  • 2010年07月28日 14:22
  • 4409

C#--,设计一个windows应用程序,实现不同运算。

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; ...
  • bao2516090
  • bao2516090
  • 2012年11月03日 15:31
  • 1372

C++中Timer的使用

SDK开发采用系统的SetTimer、KillTimer函数来注册和释放Timer回调函数。   创建Timer事件 ::SetTimer(hWnd,5,1000, OnTimer); 5为T...
  • cjjwwss
  • cjjwwss
  • 2013年09月16日 13:05
  • 3827

Spring -- 第一个简单的Spring程序

在使用Spring之前,我们要下载Spring的jar包。 下载地址,官网 http://repo.spring.io/release/org/springframework/spring/我这里...
  • u010926176
  • u010926176
  • 2015年07月16日 16:02
  • 1361
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用timer控件创建一个简单的报警程序
举报原因:
原因补充:

(最多只允许输入30个字)