Exemplo n.º 1
0
 private void tmrClock_Tick(object sender, System.EventArgs e)
 {
     //计时减一
     this.maxTimeNumber = maxTimeNumber - 1;
     if (this.maxTimeNumber == 0)
     {
         //关机时间到,执行关机操作
         //关闭计时器控件
         this.tmrClock.Stop();
         //实例化ExitWindows类
         objExitWindows = new ExitWindows();
         bool ok = objExitWindows.Close();
         if (!ok)
         {
             MessageBox.Show("由于某种原因,无法完成操作");
         }
     }
     else
     {
         //显示提示信息
         this.lblMessage.Text = "离自动关机时计时间还有 " + this.maxTimeNumber.ToString() + " 秒";
     }
 }
Exemplo n.º 2
0
        private void tmrMainClock_Tick(object sender, EventArgs e)
        {
            //每一次定时时间内刷新日期时间的显示
            DateTime objDateTime = System.DateTime.Now;
            string   currentDate = objDateTime.ToLongDateString();
            string   currentTime = objDateTime.ToLongTimeString();

            this.textDateTime.Text = currentDate + " " + currentTime;
            //检查是否启动定时关机
            if (State == true)
            {
                //定时关机已经启动
                //计算剩余的关机时间
                //得到设定关机时间的年分
                int intYear = this.dtpCurrentDate.Value.Year;
                //得到设定关机时间的月分
                int intMonth = this.dtpCurrentDate.Value.Month;
                //得到设定关机时间的天数
                int intDay = this.dtpCurrentDate.Value.Day;
                //得到设定关机时间的小时
                int intHour = this.dtpCurrentTime.Value.Hour;
                //得到设定关机时间的分
                int intMinute = this.dtpCurrentTime.Value.Minute;
                //得到设定关机时间的秒
                int intSecond = this.dtpCurrentTime.Value.Second;
                //用设定关机时间的年、月、日、小时、分、秒实例化
                objDateTime = new DateTime(intYear, intMonth, intDay, intHour, intMinute, intSecond);
                //求剩余的关机时间
                System.TimeSpan remainTime = objDateTime - System.DateTime.Now;
                //将剩余的关机时间转换为秒
                double time = remainTime.TotalSeconds;
                //判断是否为负值
                if (time < 0)
                {
                    //结果为负,表示设置的关机时间不合适,一般为误操作
                    //取消“启动定时关机”
                    State = false;
                    //显示提示信息
                    MessageBox.Show("设定的定时关机时间必须大于当前的时间");
                    this.lblState2.Text = "未启动";
                }
                else
                {
                    //结果为正值
                    //检查是否小于60秒并且提示方式为1分钟倒计时
                    if (time < 60 && State == true)
                    {
                        //启动提醒界面
                        //实例化AwokeForm,并传递主窗体对象
                        AwokeForm objAwokeForm = new AwokeForm(this);
                        //关闭计时器
                        this.tmrMainClock.Stop();
                        //隐藏主界面
                        this.Visible = false;
                        //显示提醒界面
                        objAwokeForm.Show();
                        objAwokeForm.lbl = lblState2;
                        objAwokeForm.tmr = tmrMainClock;
                    }
                    //检查是否小于0秒并且提示方式为无
                    if (time < 0 && State == false)
                    {
                        //关机
                        //调用关闭方法
                        bool ok = objExitWindows.Close();
                        if (!ok)
                        {
                            MessageBox.Show("由于某种原因,无法完成操作");
                        }
                    }
                }
            }
        }