




版權說明:本文檔由用戶提供并上傳,收益歸屬內(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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 出售學校學區(qū)房合同范本
- 一建培訓合同范本
- 年度供貨合同范本
- 供銷總社采購合同范例
- 勞動工人合同范本
- 公司合作簽合同范本
- 中央新風合同范本
- 加盟飯店合同范本
- 中介房租合同范本
- app項目轉讓合同范本
- 社會階層與教育選擇行為分析-深度研究
- 社會工作行政(第三版)課件匯 時立榮 第6-11章 項目管理- 社會工作行政的挑戰(zhàn)、變革與數(shù)字化發(fā)展
- 學校小賣部承包合同范文
- 2025年湘潭醫(yī)衛(wèi)職業(yè)技術學院高職單招職業(yè)適應性測試近5年常考版參考題庫含答案解析
- 2025年湖南鐵道職業(yè)技術學院高職單招職業(yè)技能測試近5年常考版參考題庫含答案解析
- DB 63- T993-2011 三江源生態(tài)監(jiān)測技術規(guī)范
- 北京市東城區(qū)2025年公開招考539名社區(qū)工作者高頻重點提升(共500題)附帶答案詳解
- 2025福建福州地鐵集團限公司運營分公司校園招聘高頻重點提升(共500題)附帶答案詳解
- 2025至2030年中國電子護眼臺燈數(shù)據(jù)監(jiān)測研究報告
- 兒童睡眠障礙治療
- 2025年浙江省溫州樂清市融媒體中心招聘4人歷年高頻重點提升(共500題)附帶答案詳解
評論
0/150
提交評論