C#窗口实现定时关机系统
作者:mq_shouhug753951mq
这篇文章主要为大家详细介绍了C#窗口实现定时关机系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了C#窗口实现定时关机系统的具体代码,供大家参考,具体内容如下
看一下运行之后的效果图
看代码
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace ShutDoneWindows { public partial class ShutDone : Form { public ShutDone() { InitializeComponent(); } private void menuItemExit_Click(object sender, EventArgs e) { Application.Exit(); } private void ShutDone_Load(object sender, EventArgs e) { this.timer1.Start(); DateTime DT = System.DateTime.Now; string dt = System.DateTime.Now.ToString(); txtDatatime.Text = dt; } private void btnHide_Click(object sender, EventArgs e) { this.Hide(); this.notifyIcon1.Visible = true; } private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e) { this.Visible = true; this.WindowState = FormWindowState.Normal; this.notifyIcon1.Visible = false; } private void btnShutDone_Click(object sender, EventArgs e) { System.Diagnostics.Process.Start("cmd.exe", "/cshutdown -s -t 0"); } private void btnReLogin_Click(object sender, EventArgs e) { System.Diagnostics.Process.Start("cmd.exe", "/logoff 0"); } private void btnReBoot_Click(object sender, EventArgs e) { System.Diagnostics.Process.Start("cmd.exe", "/shutdown -r 0"); } private void timer1_Tick(object sender, EventArgs e) { DateTime objDatetime = System.DateTime.Now; string cData = objDatetime.ToLongDateString(); string cTime = objDatetime.ToLongTimeString(); this.txtDatatime.Text = cData + "" + cTime; if (this.chkStrat.Checked == true) { int Y = this.dtpCurrentDate.Value.Year; int M = this.dtpCurrentDate.Value.Month; int D = this.dtpCurrentDate.Value.Day; int H = this.dtpCurrentTime.Value.Hour; int Min = this.dtpCurrentTime.Value.Minute; int S = this.dtpCurrentTime.Value.Second; objDatetime = new DateTime(Y, M, D, H, Min, S); System.TimeSpan remain = objDatetime - System.DateTime.Now; double time = remain.TotalSeconds; if (time < 0) { this.chkStrat.Checked = false; MessageBox.Show("设定的定时时间必须大于当前时间"); } else { if (time < 60 && this.rbtnOneMinute.Checked == true) { AwokeForm aw = new AwokeForm(); this.timer1.Stop(); this.Hide(); aw.Show(); } if (time < 0 && this.rbtnNone.Checked == true) { System.Diagnostics.Process.Start("cmd.exe", "/cshutdown -s -t 0"); } } } } private void chkStrat_CheckedChanged(object sender, EventArgs e) { } private void rbtnOneMinute_CheckedChanged(object sender, EventArgs e) { } private void rbtnNone_CheckedChanged(object sender, EventArgs e) { } } }
窗口提醒的代码!
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace ShutDoneWindows { public partial class AwokeForm : Form { public AwokeForm() { InitializeComponent(); } private void btnCancel_Click(object sender, EventArgs e) { timer1.Stop(); this.Close(); } private void AwokeForm_Load(object sender, EventArgs e) { this.timer1.Start(); this.lblMessage.Text = "距离当前关机还有" +60+ "秒"; } int max = 60; private void timer1_Tick(object sender, EventArgs e) { this.max = max - 1; if (this.max == 0) { System.Diagnostics.Process.Start("cmd.exe", "/cshutdown -s -t 0"); this.timer1.Stop(); } else { this.lblMessage.Text = "距离当前关机还有" + this.max.ToString() + "秒"; } } } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。