用VisualC#.net完成一個時間提醒器_第1頁
用VisualC#.net完成一個時間提醒器_第2頁
用VisualC#.net完成一個時間提醒器_第3頁
用VisualC#.net完成一個時間提醒器_第4頁
用VisualC#.net完成一個時間提醒器_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、用VisualC#.net完成一個時間提醒器有些人一用起電腦就會忘記時間,所以我就想做一個小工具,能實現(xiàn)鬧鐘的功能。 首先,要設計用戶界面,要簡介易用,所以不必太多的東西,要兩個TextBox,兩個Button,還有幾個用來顯示文字提示Lable,的就可以了!把控件安排好以后,就可以編寫代碼了。其中一個TextBox(代碼中的textBox1)是要輸入時間到了以后要顯示的提示信息。另一個TextBox則是設置時間的(代碼中的textBox2)。設置時間的TextBox的格式是“00:00:00”,所以要有很多限定,比如只能輸入數(shù)字,而且其中的兩個冒號不能被修改。一下我就設計了SimpleTex

2、tBox類,來限制時間的輸入。SimpleTextBox類代碼如下:文件:SimpleTextBox.csusingSystem;usingSystem.Collections;usingSystem.ComponentModel;usingSystem.Drawing;usingSystem.Data;usingSystem.Windows.Forms;namespaceSimpleTextBoxpublicclassSimpleTextBox:System.Windows.Forms.TextBoxprivatestringm_format;/設定時間的顯示格式privatecharm_i

3、npChar;/缺省的字符publicSimpleTextBox()base.Multiline=false;base.MaxLength=8;m_inpChar=0;m_format=00:00:00;privateboolIsValidChar(charinput)return(char.IsDigit(input);/檢查是否為數(shù)字 HYPERLINK file:/重file:/重載TextBox的onKeyPress方法protectedoverridevoidonKeyPress(KeyPressEventArgse)intstrt=base.SelectionStart;intle

4、n=base.SelectionLength;intp; HYPERLINK file:/處file:/處理Backspace鍵-用缺省字符代替刪除后的地方if(e.KeyChar=0 x08)strings=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;e.Handled=true;return; HYPERLINK file:/初file:/初始顯示i

5、f(m_formatstrt!=m_inpChar)strt=Next(-1);len=1; HYPERLINK file:/接file:/接受鍵盤的輸入if(IsValidChar(e.KeyChar)stringt=;t=base.Text.Substring(0,strt);t+=e.KeyChar.ToString();if(strt+len!=base.MaxLength)t+=m_format.Substring(strt+1,len-1);t+=base.Text.Substring(strt+len);elset+=m_format.Substring(strt+1);base

6、.Text=t; HYPERLINK file:/下file:/下一個輸入字符strt=Next(strt);base.SelectionStart=strt; HYPERLINK file:/m_caret=strtfile:/m_caret=strt;base.SelectionLength=1;e.Handled=true; HYPERLINK file:/將file:/將光標向前檢測privateintPrev(intstartPos)intstrt=startPos;intret=strt;while(strt0)strt-;if(m_formatstrt=m_inpChar)ret

7、urnstrt;returnret; HYPERLINK file:/將file:/將光標向后檢測,返回下一個字符的位置privateintNext(intstartPos)intstrt=startPos;intret=strt;while(strt strt+;if(m_formatstrt=m_inpChar)returnstrt;returnret; HYPERLINK file:/重file:/重載onMouseUp事件protectedoverridevoidonMouseUp(MouseEventArgse)intstrt=base.SelectionStart;intorig=

8、strt;intlen=base.SelectionLength; HYPERLINK file:/重file:/重設定開始位置if(strt=base.MaxLength|m_formatstrt!=m_inpChar) HYPERLINK file:/resetstartfile:/resetstartif(Next(strt)=strt)strt=Prev(strt);elsestrt=Next(strt);base.SelectionStart=strt; HYPERLINK file:/重file:/重設定選定長度if(len=60)minutes+=1;seconds-=60;wh

9、ile(minutes=60)hours+=1;minutes-=60;stringstrHours=hours.ToString();stringstrMinutes=minutes.ToString();stringstrSeconds=seconds.ToString();if(strHours.Length2)strHours=0+strHours;if(strMinutes.Length2)strMinutes=0+strMinutes;if(strSeconds.Length0this.timer1.Enabled=true;if(textBox2.Text!=00:00:00)t

10、his.textBox2.ReadOnly=true;建立一個TimerAlarm的實例,開始計時。重設按鈕:privatevoidbutton2_Click(objectsender,System.EventArgse)this.textBox1.Clear();this.timer1.Enabled=false;if(timeAlarm!=null)timeAlarm.StopTimer();this.textBox2.ReadOnly=false;this.textBox2.Text=00:00:00;恢復程序。還有一個Timer,用來動態(tài)顯示剩下的時間。privatevoidtimer1_Tick(objectsender,System.EventArgse)if(timeAlarm.Countdown=0)textBox2.Text=FormatConvert.secondsToTime(timeAlarm.Countdown);elsethis.timer1.Enabled=false;this.textBox2.ReadOnly=false;程序

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論