频 道 直 达 - 新闻 - 培训 - 软件 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 读书 - 博客 - BBS
51CTO.COM_中国最大的网络技术网站
找资料:

13.4.3.1 采用计时器来设计一个闹钟程序

作者: 周礼 出处:清华大学出版社  2008-06-18 16:06    砖    好    评论   进入论坛
阅读提示:《C#和.NET 3.0第一步》第13章讲解C#多线程操作的相关内容。这一节说的是采用计时器来设计一个闹钟程序。

13.4.3  使用线程操作Windows窗体

一个Windows程序通常可能有很多窗体,但这些窗体都是属于一个线程的。如果你希望在窗体程序处理时进行一些异步的操作,比如后台文件搜索、访问数据库、访问网络等,就必须使用线程或Timer控件。Timer控件在前面我们没有介绍过,它是实现根据用户定义的时间间隔引发事件的计时器。计时器通常用于Windows窗体应用程序执行简单异步操作的情况下,并且必须在窗体中使用,而线程通常可以完成更复杂的异步操作。

计时器控件的使用非常简单,用于Windows窗体的Timer由System.Windows.Forms命名空间下的Timer类创建,常用属性和事件如下(表13.5):

表13.5

   

   

Enabled

设置计时器是否有效

Interval

计时时间间隔,以毫秒为单位

    

   

Tick

达到时间间隔时触发的事件

   

   

Start

开启计时器

Stop

关闭计时器

计时器的工作原理跟日常生活中秒表计时器相似,当开始计时后,每到一定的时间间隔将会触发Tick事件,你可以在Tick事件里设置计时操作的处理逻辑。要使用计时器功能,你可以直接向Windows窗体设计器拖入一个Timer控件,然后设置其Enabled属性为true,Interval属性为一定的时间间隔,以及设置其Tick事件即可使用该计时器。

13.4.3.1  采用计时器来设计一个闹钟程序

下面我们采用计时器来设计一个闹钟程序。要设计这个程序,你首先应该建立一个Windows应用程序,然后设置窗体的Text属性为“闹钟”,并在窗体上加入一个Label标签,并设置标签名称为“lblClock”。此时从工具箱拖入一个Timer控件,并设置其Enable属性为true,其Interval属性为1000;最后设置Timer控件的Tick事件,并在该事件对应的方法里面填入下面代码:

public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//Tick事件对应的方法,每过一段时间都会执行
private void timer1_Tick(object sender, EventArgs e)
{
DateTime t =DateTime.Now;
this.label1.Font = new Font("宋体", 15);
this.label1.Text = t.ToString();
//8点1分1秒叫你起床
if (t.Hour == 8 && t.Minute==1 && t.Second == 1)
{
MessageBox.Show("懒猪,该起床了!");
}
}
}

运行结果(图13.4):

 
图13.4  闹钟示例

上面我们是使用拖拉控件的方式建立的Timer计时器,你也可以用代码的方式来建立和使用Timer控件,此时你直接创建Timer对象,并设置其Interval属性,订阅其Tick事件,然后使用Start或Stop方法开启或关闭计时器即可。要注意的是,Start方法实际上和Enable属性设置为true效果相同,两者你可以使用其一来开启计时器。

【责任编辑:董书 TEL:(010)68476606】

回书目   上一节   下一节
专题
Windows Home Server 家用服务器专题
程序员如何成长?
Windows Server 2008专题
windows网络安全指南
赛门铁克诺顿误杀Windows系统文件 导致百万系统崩溃
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 最 大 的 网 络 技 术 网 站 ·
技 术 成 就 梦 想
订阅技术快讯
电子杂志下载
名称:SQL Server数据库管理精品黄皮书
简介:书中文章经过精挑细选,便于用户能根据自己的实际工作和学习,快速在本书寻找到相关资料。内容涵盖了SQL Server的安装与升级、语句查询、数据备份和恢复、自动化任务、数据同步、数据字典、安全和预防、性能和优化、集群等各方面应用信息,以及DBA管理人员在数据库管理工作中
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
技术人求职简历完备手册
技术人求职简历完备手册
开源虚拟化技术Xen
开源虚拟化技术Xen
Windows Server 2008专题
Windows Server 2008专题
· Windows Server 2008专..
· 隐私保护技术探讨
· 绿色IT人健康生存手册
· 网络工程师职业规划与..
· 杀毒软件评测专题
· 访问控制列表(ACL)介绍
· Vista SP1对决XP SP3
· 华为员工自杀频频拷问..
· 2008中国互联网大会
· 微软出价446亿美元收购..
· 勇闯IT培训黑色围城
· CISSP认证成长之路
· 解析35岁技术人的价值..
· LAMP技术精解
· AMD Phenom三核处理器..
· 充电计划之热门IT认证..
ARP攻击防范与解决方案
ARP攻击防范与解决方案
SQL Server 2008/2005全解
SQL Server 2008/2005全解
SOA 面向服务架构
SOA 面向服务架构
· SOA 面向服务架构
· SQL Server 2008/2005..
· Apache技术专题
· 三层交换技术专题
· SQL Server入门到精通
· Apache技术专题
· 国际文档格式标准开战
· 路由器设置与口令恢复
· PHP开发应用手册
· SOA 面向服务架构
· 企业数据恢复指南
· 了解统一威胁管理(UTM)..
· 专题:AIX操作系统管理..
· 访问控制列表(ACL)介绍
· 反垃圾邮件技术应用
· ASP.NET 2.0基础开发指..
ARP攻击防范与解决方案
ARP攻击防范与解决方案
SQL Server 2008/2005全解
SQL Server 2008/2005全解
SQL Server入门到精通
SQL Server入门到精通
· SQL Server入门到精通
· SQL Server 2008/2005..
· SOA 面向服务架构
· Apache技术专题
· 三层交换技术专题
· Apache技术专题
· 企业数据恢复指南
· 路由器设置与口令恢复
· SOA 面向服务架构
· 了解统一威胁管理(UTM)..
· 反垃圾邮件技术应用
· 访问控制列表(ACL)介绍
· PHP开发应用手册
· 专题:AIX操作系统管理..
· 交换机故障解决指南
· 三层交换技术专题