2-8  Timer 控件<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

u 本节学习目标:

n 了解Timer控件的属性及方法、事件

n 学习用Timer控件控制其他控件位移

n 学习显示计算机运行的时间长度和应用程序运行的时间长度

n 学习通过Timer控件流失的时间

    <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />2-8-1  简介

    Winform 的编程开发中,需要一种可在程序运行时操控时间的机制,该机制主要用来处理按指定的时间运行的具体事件,如图像的移动或者间隔性发生的事件等等。 Timer 控件就是这样一种时间控制器,它来自 Timer 类,并包含在 System.Windows.Forms 命名空间中。 Timer 控件为开发人员提供了一种在经过指定的时间间隔或到达指定的绝对时间时根据代码进行响应的方式,而该控件组件与其他控件不同之处就在于,它不向用户提供用户界面,因此没有必要显示在 Winform 设计器的界面上显示。从某种意义上讲 Timer 控件与用户无关,可以通过编程,在规定的时刻执行相应动作,或者按照某个周期触发一个具体的事件。                             

    2-8-2  Timer控件的属性及方法、事件

    我们在 2-7 节已经见过 Timer 控件的应用,其具体位置及配置情况在图 2-25 处已有案例说明。 Timer 控件主要的属性和事件如表 2-8 所示:

属性

说明

Enabled

时钟是否可用

Interval

时钟每间隔多长时间触发一次tick事件, 时间间隔单位是毫秒数

事件与方法

说明

Start()

时钟启动

Stop()

时钟停止

Tick 

每隔Interval时间间隔触发一次

2-8 时间控件的属性与方法

    2-8-3  Timer控件实践操作

1.<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />案例学习:移动的图片

1 )如图 2-23 所示,从工具箱之中拖放一个 pictureBox 图片控件和两个 Button 控件,在 WinForm 窗体上布置完毕后,再从工具箱中拖放一个 Timer 控件,完成界面的布置工作。
2-23  移动图片界面布置
2 )将 Timer 控件的 Enable 属性设置为 True ,双击“播放”按钮,键入如下代码:

        private void button1_Click(object sender, EventArgs e)

        {

            timer1.Start();//启动timer控件

  }

3 )双击“停止”按钮,键入如下代码:

        private void button2_Click(object sender, EventArgs e)

        {

            timer1. Stop();// 停止 timer控件

  }

4 )双击 timer1 控件对象,在其 Tick 事件中键入如下代码:

        private void timer1_Tick(object sender, EventArgs e)

        {

            pictureBox1.Left -= 5;//图片对象每隔一段时间(由timer的时间间隔决定)向左移动5像素

            if (pictureBox1.Right < 0)//如果图片的右边小于0,则意味着图片从当前窗体左侧消失

            {

                pictureBox1.Left = Width;//则图片的左侧设置为窗体宽度,即从右侧再次出现

            }