C#中Timer控件的使用用法

 本来以为控件差不多学完了,结果今天偶尔发现只是学了Common Device Controls,在All Device Controls里还有一些其他的控件没看。不过大部分也不是太实用,我觉得Timer控件还算比较有用,因此再把它做成个程序用一下。

       其实程序大体是网上查到的,不过有些错误,我修改了一下。程序如下:

private void timer2_Tick(object sender, EventArgs e)
        {
            string cesuotime = DateTime.Now.ToShortTimeString();//得到现在的时间
            if (cesuotime.Equals("1:05 AM"))
            {
                timer1.Enabled = false;//如果不先把enabled设置成false对话框会一直弹
                MessageBox.Show("You should go to toilet ;)");
                timer1.Enabled = true;

            }

       用到2个timer控件,先把timer2的Interval属性改成60,000(一秒),visible设成true;timer1的visible设成false。用timer2每隔一秒控制一次timer1的动作(用Tick事件完成)。该程序当时间走到1:05AM时,显示“你该上厕所了”。

       在程序的调试过程中我碰到过两个问题:首先是以为只要一个timer就行了,没有注意用timer2控制timer1,结果调试发现程序没有执行上述语句。另一个问题是系统时间原来写的是“1:05”,调试发现if下面的语句没有执行,结果用messagebox显示了一下cesuotime,发现系统时间还有一个AM。

       程序运行后的图就不附上了,就是一个messagebox上面显示“You should go to toilet”。要注意的是:并不是一到时间就显示信息框,比如你1点04分30秒开始运行,要到1点05分30秒才会出现,因为timer2每隔一分钟执行一次。

总结: c#中timer1.Enabled = true与timer1.start()什么区别

1、用作启动时间控件时,没有什么区别。start()的内部实现就是this.enabled=true;

2、但是由于eabled属性记录计时器的状态,通过该属性我们可以随时获取计时器的启动状态,并修改 之;而start()或stop()方法却不能获取计时器状态,只有用作开关动作。

Timer控件主要会用到2个属性一个是Enabled和Interval
Enabled主要是控制当前Timer控件是否可用
timer1.Enabled=false;不可用
timer1.Enabled=true;可用
timer1.Interval=1000;单位为毫秒

主要事件:timer1.tick(),计时器定时触发该事件,被触发处理放在该事件函数中

private void timer1_Tick(object sender, EventArgs e)
        {
             TransformationElement();        
        }


  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值