用Visual C#.net完成一个简单时间提醒器

本文介绍如何利用Visual C#.net构建一个简单的时间提醒器。通过自定义SimpleTextBox类限制时间输入,结合Timer类实现定时提醒功能。用户界面包含两个TextBox,一个用于设置提醒信息,另一个用于输入时间,当时间到达时,会显示提醒对话框。
摘要由CSDN通过智能技术生成

Visual C#.net完成一个简单时间提醒器

 

    有些人一用起电脑就会忘记时间,所以我就想做一个小工具,能实现闹钟的功能。

    首先,要设计用户界面,要简介易用,所以不必太多的东西,要两个TextBox,两个Button,还有几个用来显示文字提示Lable,的就可以了!

    把控件安排好以后,就可以编写代码了。其中一个TextBox(代码中的textBox1)是要输入时间到了以后要显示的提示信息。另一个TextBox则是设置时间的(代码中的textBox2)。设置时间的TextBox的格式是“00:00:00”,所以要有很多限定,比如只能输入数字,而且其中的两个冒号不能被修改。一下我就设计了SimpleTextBox类,来限制时间的输入。SimpleTextBox类代码如下:

文件:SimpleTextBox.cs

 

using System;

using System.Collections;

using System.ComponentModel;

using System.Drawing;

using System.Data;

using System.Windows.Forms;

 

namespace SimpleTextBox

{

       public class SimpleTextBox : System.Windows.Forms.TextBox

       {

              private string m_format;   //设定时间的显示格式

              private char m_inpChar;   //缺省的字符

              public SimpleTextBox()

              {

                     base.Multiline=false;

                     base.MaxLength=8;

                     m_inpChar = '0';

                     m_format = " 00:00:00 ";

              }

 

 

              private bool IsValidChar(char input)

              {

                     return(char.IsDigit(input));   //检查是否为数字

              }

 

//重载TextBoxOnKeyPress方法

              protected override void OnKeyPress(KeyPressEventArgs e)

              {

                     int strt = base.SelectionStart;

                     int len = base.SelectionLength;

                     int p;

 

                     // 处理Backspace -> 用缺省字符代替删除后的地方

                     if(e.KeyChar == 0x08)

                     {

                            string s = base.Text;

                            p = Prev(strt);

                            if(p != strt)

                            {

                                   base.Text = s.Substring(0, p) +m_inpChar.ToString() + s.Substring(p + 1);

                                   base.SelectionStart = p;

                                   base.SelectionLength = 1;

                                  

                            }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值