这篇文章主要介绍了WinForm实现程序一段时间不运行自动关闭的方法,涉及WinForm计时器及进程操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例讲述了WinForm实现程序一段时间不运行自动关闭的方法。分享给大家供大家参考。具体实现方法如下:
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Text;
- using System.Windows.Forms;
- using System.Net;
- using System.IO;
- using System.Security.Cryptography.X509Certificates;
- using System.Net.Security;
- namespace DemoDataGridView
- {
- public partial class Form3 : Form, IMessageFilter
- {
- private int m_WaitMinute = 0;
- System.Windows.Forms.Timer MyTimer;
- public Form3()
- {
- InitializeComponent();
- MyTimer = new Timer();
- MyTimer.Interval = 1000;
- MyTimer.Tick += new EventHandler(MyTimer_Tick);
- Application.Idle += new EventHandler(Application_Idle);
- }
- void MyTimer_Tick(object sender, EventArgs e)
- {
- if (m_WaitMinute < 60)
- {
- MyTimer.Enabled = true;
- MyTimer.Interval = 10000; //10秒
- m_WaitMinute += 1;
- // this.Opacity = 1.0 - Convert.ToDouble(m_WaitMinute / 60.0);
- }
- else
- {
- MyTimer.Enabled = false;
- }
- }
- void Application_Idle(object sender, EventArgs e)
- {
- if (m_WaitMinute == 0)
- {
- System.IO.File.WriteAllText("D://1.txt", DateTime.Now.ToString());
- MyTimer.Start();
- }
- else
- {
- if (m_WaitMinute >= 6)
- {
- System.IO.File.WriteAllText("D://2.txt", DateTime.Now.ToString());
- this.Close();
- }
- }
- }
- public bool PreFilterMessage(ref Message m)
- {
- if (m_WaitMinute != 0)
- {
- m_WaitMinute = 0;
- MyTimer.Enabled = false;
- return true;
- }
- return false;
- }
- }
- }
希望本文所述对大家的C#程序设计有所帮助。
新闻热点
疑难解答