c#怎么做一个定时运行程序!!! 用timer控件,检测时间后触发事件 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 using System;using System.Drawing;using System.Collections;using System.ComponentModel;using System.Windows.Forms;using System.Data;namespace NoticePad{ /// <summary> /// 定时提醒的小工具。 /// </summary> public class Form1 : System.Windows.Forms.Form { private System.Windows.Forms.Label label1; private System.Windows.Forms.Label label2; private System.Windows.Forms.TextBox textBox1; private System.Windows.Forms.Timer timer1; private System.Windows.Forms.NumericUpDown ndHour; private System.Windows.Forms.NumericUpDown ndMinute; private System.Windows.Forms.Button btn_OK; private System.ComponentModel.IContainer components; public Form1() { // // Windows 窗体设计器支持所必需的 // InitializeComponent(); // // TODO: 在 InitializeComponent 调用后添加任何构造函数代码 // } /// <summary> /// 清理所有正在使用的资源。 /// </summary> protected override void Dispose( bool disposing ) { if( disposing ) { if (components != null) { components.Dispose(); } } base.Dispose( disposing ); } #region Windows Form Designer generated code /// <summary> /// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 /// </summary> private void InitializeComponent() { this.components = new System.ComponentModel.Container(); this.ndHour = new System.Windows.Forms.NumericUpDown(); this.ndMinute = new System.Windows.Forms.NumericUpDown(); this.label1 = new System.Windows.Forms.Label(); this.label2 = new System.Windows.Forms.Label(); this.textBox1 = new System.Windows.Forms.TextBox(); this.btn_OK = new System.Windows.Forms.Button(); this.timer1 = new System.Windows.Forms.Timer(this.components); ((System.ComponentModel.ISupportInitialize)(this.ndHour)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.ndMinute)).BeginInit(); this.SuspendLayout(); // // ndHour // this.ndHour.Location = new System.Drawing.Point(6, 6); this.ndHour.Maximum = new System.Decimal(new int[] { 23, 0, 0, 0}); this.ndHour.Name = "ndHour"; this.ndHour.Size = new System.Drawing.Size(36, 21); this.ndHour.TabIndex = 0; // // ndMinute // this.ndMinute.Location = new System.Drawing.Point(84, 6); this.ndMinute.Maximum = new System.Decimal(new int[] { 59, 0, 0, 0}); this.ndMinute.Name = "ndMinute"; this.ndMinute.Size = new System.Drawing.Size(36, 21); this.ndMinute.TabIndex = 1; // // label1 // this.label1.AutoSize = true; this.label1.Location = new System.Drawing.Point(48, 12); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(17, 17); this.label1.TabIndex = 2; this.label1.Text = "时"; // // label2 // this.label2.AutoSize = true; this.label2.Location = new System.Drawing.Point(132, 12); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(17, 17); this.label2.TabIndex = 3; this.label2.Text = "分"; // // textBox1 // this.textBox1.Location = new System.Drawing.Point(6, 31); this.textBox1.Multiline = true; this.textBox1.Name = "textBox1"; this.textBox1.ScrollBars = System.Windows.Forms.ScrollBars.Vertical; this.textBox1.Size = new System.Drawing.Size(276, 156); this.textBox1.TabIndex = 4; this.textBox1.Text = "写入提醒的内容......"; // // btn_OK // this.btn_OK.Location = new System.Drawing.Point(174, 6); this.btn_OK.Name = "btn_OK"; this.btn_OK.Size = new System.Drawing.Size(102, 19); this.btn_OK.TabIndex = 5; this.btn_OK.Text = "确定并隐藏"; this.btn_OK.TextAlign = System.Drawing.ContentAlignment.TopCenter; this.btn_OK.Click += new System.EventHandler(this.btn_OK_Click); // // timer1 // this.timer1.Interval = 1; this.timer1.Tick += new System.EventHandler(this.timer1_Tick); // // Form1 // this.AutoScaleBaseSize = new System.Drawing.Size(6, 14); this.ClientSize = new System.Drawing.Size(289, 194); this.Controls.Add(this.btn_OK); this.Controls.Add(this.textBox1); this.Controls.Add(this.label2); this.Controls.Add(this.label1); this.Controls.Add(this.ndMinute); this.Controls.Add(this.ndHour); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; this.MaximizeBox = false; this.Name = "Form1"; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; this.Text = "提醒工具"; ((System.ComponentModel.ISupportInitialize)(this.ndHour)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.ndMinute)).EndInit(); this.ResumeLayout(false); } #endregion /// <summary> /// 应用程序的主入口点。 /// </summary> [STAThread] static void Main() { Application.Run(new Form1()); } private System.DateTime dtDes; // 定时周期的检查是否到了提醒的时间了。 private void timer1_Tick(object sender, System.EventArgs e) { if (DateTime.Now > dtDes) { timer1.Enabled = false; this.Show(); this.Activate(); } } // 确定提醒的时间,然后隐藏该工具。 private void btn_OK_Click(object sender, System.EventArgs e) { dtDes = new DateTime( DateTime.Today.Year, DateTime.Today.Month, DateTime.Today.Day, (int)ndHour.Value, (int)ndMinute.Value, 0,0); timer1.Enabled = true; this.Hide(); } }} 建议直接用Windows的“任务计划”,既好用又简单,设置一下就行了。在“控制面板”的“任务计划”里面,自己找找吧。 propertygrid的自定义显示 很奇怪的数据库链接问题 IIS无法使用? 问个问题,要有耐心啊! 寻求一份可用的FTP代码 动态创建控件以后,绑定事件时出现问题。急!!! IDisposable接口的疑问 请大家用最通俗的语言解释一下“回调函数”的作用和用法 [10]哪里有MSIL学习的资料? com+是否是用于.net的技术?它能否用于windows9X?用C#编译的程序能否直接运行在win9x下? 在C#中如何生成网页中调用的插件包? 这个有错吗?
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;namespace NoticePad
{
/// <summary>
/// 定时提醒的小工具。
/// </summary>
public class Form1 : System.Windows.Forms.Form
{
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.TextBox textBox1;
private System.Windows.Forms.Timer timer1;
private System.Windows.Forms.NumericUpDown ndHour;
private System.Windows.Forms.NumericUpDown ndMinute;
private System.Windows.Forms.Button btn_OK;
private System.ComponentModel.IContainer components; public Form1()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent(); //
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
} /// <summary>
/// 清理所有正在使用的资源。
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if (components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
} #region Windows Form Designer generated code
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.ndHour = new System.Windows.Forms.NumericUpDown();
this.ndMinute = new System.Windows.Forms.NumericUpDown();
this.label1 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.textBox1 = new System.Windows.Forms.TextBox();
this.btn_OK = new System.Windows.Forms.Button();
this.timer1 = new System.Windows.Forms.Timer(this.components);
((System.ComponentModel.ISupportInitialize)(this.ndHour)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.ndMinute)).BeginInit();
this.SuspendLayout();
//
// ndHour
//
this.ndHour.Location = new System.Drawing.Point(6, 6);
this.ndHour.Maximum = new System.Decimal(new int[] {
23,
0,
0,
0});
this.ndHour.Name = "ndHour";
this.ndHour.Size = new System.Drawing.Size(36, 21);
this.ndHour.TabIndex = 0;
//
// ndMinute
//
this.ndMinute.Location = new System.Drawing.Point(84, 6);
this.ndMinute.Maximum = new System.Decimal(new int[] {
59,
0,
0,
0});
this.ndMinute.Name = "ndMinute";
this.ndMinute.Size = new System.Drawing.Size(36, 21);
this.ndMinute.TabIndex = 1;
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(48, 12);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(17, 17);
this.label1.TabIndex = 2;
this.label1.Text = "时";
//
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(132, 12);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(17, 17);
this.label2.TabIndex = 3;
this.label2.Text = "分";
//
// textBox1
//
this.textBox1.Location = new System.Drawing.Point(6, 31);
this.textBox1.Multiline = true;
this.textBox1.Name = "textBox1";
this.textBox1.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
this.textBox1.Size = new System.Drawing.Size(276, 156);
this.textBox1.TabIndex = 4;
this.textBox1.Text = "写入提醒的内容......";
//
// btn_OK
//
this.btn_OK.Location = new System.Drawing.Point(174, 6);
this.btn_OK.Name = "btn_OK";
this.btn_OK.Size = new System.Drawing.Size(102, 19);
this.btn_OK.TabIndex = 5;
this.btn_OK.Text = "确定并隐藏";
this.btn_OK.TextAlign = System.Drawing.ContentAlignment.TopCenter;
this.btn_OK.Click += new System.EventHandler(this.btn_OK_Click);
//
// timer1
//
this.timer1.Interval = 1;
this.timer1.Tick += new System.EventHandler(this.timer1_Tick);
//
// Form1
//
this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
this.ClientSize = new System.Drawing.Size(289, 194);
this.Controls.Add(this.btn_OK);
this.Controls.Add(this.textBox1);
this.Controls.Add(this.label2);
this.Controls.Add(this.label1);
this.Controls.Add(this.ndMinute);
this.Controls.Add(this.ndHour);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.MaximizeBox = false;
this.Name = "Form1";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "提醒工具";
((System.ComponentModel.ISupportInitialize)(this.ndHour)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.ndMinute)).EndInit();
this.ResumeLayout(false); }
#endregion /// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.Run(new Form1());
} private System.DateTime dtDes;
// 定时周期的检查是否到了提醒的时间了。
private void timer1_Tick(object sender, System.EventArgs e)
{
if (DateTime.Now > dtDes)
{
timer1.Enabled = false;
this.Show();
this.Activate();
}
} // 确定提醒的时间,然后隐藏该工具。
private void btn_OK_Click(object sender, System.EventArgs e)
{
dtDes = new DateTime(
DateTime.Today.Year,
DateTime.Today.Month,
DateTime.Today.Day,
(int)ndHour.Value,
(int)ndMinute.Value,
0,0);
timer1.Enabled = true;
this.Hide();
}
}
}