版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、目錄一、課程設(shè)計(jì)的目的與要求2二、題目說明22.1程序開發(fā)景.32.2開發(fā)工紹.3三、總體設(shè)計(jì)4四、詳細(xì)說明44.1 系統(tǒng)實(shí)施.4五、遇到的問題和解決法.13六、課程設(shè)計(jì)總結(jié).14七、參考文獻(xiàn).14一、課程設(shè)計(jì)的目的與要求 目的: 1、熟悉.net開發(fā)環(huán)境,能夠使用c#語言在.net平臺(tái)上獨(dú)立設(shè)計(jì)、開發(fā)windows應(yīng)用程序。 2、掌握c#語言的異常處理技術(shù),能夠使用.net各種調(diào)試方法調(diào)試代碼,掌握幫助的使用方法。 3、掌握常用控件以及控件的常用屬性的使用方法。 要求: 1、程序中應(yīng)有不少于100300行的自行編寫的代碼,代碼需書寫詳細(xì)注釋。 2、軟件界面美觀大方,操作簡(jiǎn)潔易用,功能完備可靠
2、。 3. 通過c#課程設(shè)計(jì),使學(xué)生能將學(xué)到的面向?qū)ο蟮某绦蛟O(shè)計(jì)思想用到具體的工作和學(xué)習(xí)中,加深對(duì)類和對(duì)象的理解,要求學(xué)生能夠?qū)ΜF(xiàn)實(shí)生活中許多具體事物抽象出類,并掌握繼承與派生,基類、虛方法和抽象方法和多態(tài)性的概念。二、題目說明 創(chuàng)建支持多文檔的記事本,每個(gè)子窗口都應(yīng)包含一個(gè)richtextbox。mdi父窗口具有“格式”菜單,用于子菜單控制活動(dòng)子窗口中文本的大小、字體和顏色。每個(gè)子菜單至少含有三個(gè)選項(xiàng)極其快捷鍵。另外,父菜單還含有“文件”菜單,菜單項(xiàng)有“新建”(創(chuàng)建新的子窗口)、“關(guān)閉”(關(guān)閉活動(dòng)子窗體)和“退出”(退出應(yīng)用程序)。父窗口還有“窗口”菜單顯示一系列打開的子窗口及其布局選項(xiàng)。參考
3、界面如:圖1主要實(shí)現(xiàn)界面2.1程序開發(fā)背景 為了滿足用戶對(duì)于記事本的一些基礎(chǔ)需求,主要包括“打開”記事本,“新建”、“字體編輯”及保存等功能,所以在老師與自己查閱書籍的情況下,選擇編寫記事本這一題目。2.2開發(fā)工具介紹c#(讀做 c sharp,中文譯音暫時(shí)沒有.專業(yè)人士一般讀c sharp,現(xiàn)在很多非專業(yè)一般讀c井。 c#是微軟公司發(fā)布的一種面向?qū)ο蟮?、運(yùn)行于.net framework之上的高級(jí)程序設(shè)計(jì)語言。并定于在微軟職業(yè)開發(fā)者論壇(pdc)上登臺(tái)亮相。c#是微軟公司研究員anders hejlsberg的最新成果。c#看起來與java有著驚人的相似;它包括了諸如單一繼承、接口、與jav
4、a幾乎同樣的語法和編譯成中間代碼再運(yùn)行的過程。 但是c#與java有著明顯的不同,它借鑒了delphi的一個(gè)特點(diǎn),與com(組件對(duì)象模型)是直接集成的,而且它是微軟公司.net windows網(wǎng)絡(luò)框架的主角。三、總體設(shè)計(jì)總體設(shè)計(jì)思路主要是為了實(shí)現(xiàn)用戶打開記事本時(shí),通過新建新的文本文檔,來記事。用戶可以執(zhí)行的操作有,錄入文本后,對(duì)文本的字體、顏色、格式等進(jìn)行編輯,同時(shí)還可以進(jìn)行撤消、剪切、粘貼、全選等操作,是用戶方便使用。待文字及其格式做好后,用戶可以保存,或者另存為到自己想要的位置。此外還可以進(jìn)行頁面設(shè)置與打印等功能,方便用戶打印急需的文件。四、詳細(xì)說明用戶可以在記事本里通過新建、編輯、保存等
5、功能實(shí)現(xiàn)正常記事本的功能。還可以通過格式里面的字體、顏色等來編輯文字。同時(shí)編輯里面的撤銷、剪切、粘貼等功能也從不同層面上滿足用戶的一定需求。通過程序所要實(shí)現(xiàn)的功能可以看出,該程序中有文件、格式等主要對(duì)象,所以我們可以通過定義生成子窗體、字體窗體、顏色窗體等來實(shí)現(xiàn)記事本文字的編輯部分,還要定義類,完成窗體間的轉(zhuǎn)換。4.1 系統(tǒng)實(shí)施1、文件-新建功能簡(jiǎn)介:通過點(diǎn)擊文件下的新建功能,可以彈出多個(gè)文本框,方便用實(shí)現(xiàn)記事功能。界面截圖如下:圖2新建實(shí)現(xiàn)效果 關(guān)鍵代碼如下:/通過“新建”菜單項(xiàng)添加子窗口 private void 新建toolstripmenuitem_click(object sende
6、r, eventargs e) /創(chuàng)建子窗體 記事本 f = new 記事本(); f.mdiparent = this; count+; f.text = 新建文本 + count; f.show(); 2、文件-另存為 功能簡(jiǎn)介:通過點(diǎn)擊文件下的另存為功能,可以彈出窗口,給出用戶可以保存文件的位置,方便用戶實(shí)現(xiàn)保存文本不丟失的功能。 界面截圖如下:圖3另存為實(shí)現(xiàn)效果關(guān)鍵代碼如下: private void 另存為toolstripmenuitem_click(object sender, eventargs e) /實(shí)現(xiàn)另存為功能 this.savefiledialog1.filter =
7、 txt files(*.txt)|*.txt|rdf files(*.rdf)|*.rdf|all files(*.*)|*.*; this.savefiledialog1.filterindex = 1; if (this.savefiledialog1.showdialog() = dialogresult.ok) filename = this.savefiledialog1.filename; try richtextbox1.loadfile(filename,richtextboxstreamtype.plaintext); catch if (filename != ) ric
8、htextbox1.savefile(filename,richtextboxstreamtype.plaintext); 3、文件-頁面設(shè)置 功能簡(jiǎn)介:在新建文本后,通過點(diǎn)擊文件下的頁面設(shè)置功能,會(huì)彈出頁面設(shè)置對(duì)話框,方便用戶對(duì)文本對(duì)話框的設(shè)置。 界面截圖如下:圖4頁面設(shè)置實(shí)現(xiàn)效果 關(guān)鍵代碼如下: private void 頁面設(shè)置toolstripmenuitem_click(object sender, eventargs e) /創(chuàng)建頁面設(shè)置對(duì)話框 pagesetupdialog my = new pagesetupdialog(); my.document = printdocume
9、nt1; try my.showdialog(); catch 4、文件-打印 功能簡(jiǎn)介:在輸入文字后,通過點(diǎn)擊文件下的打印功能,會(huì)彈出一個(gè)對(duì)話框,提醒用戶選擇打印的相關(guān)屬性。 界面截圖如下:圖5 文件打印功能關(guān)鍵代碼如下:private void 打印ptoolstripmenuitem_click(object sender, eventargs e) /創(chuàng)建打印對(duì)話框 printdialog p = new printdialog(); p.document = printdocument1; if (p.showdialog() = dialogresult.ok) try print
10、document1.print(); catch 5、文件-退出功能簡(jiǎn)介:在用戶輸入文字途中,若要退出當(dāng)前窗口,可以點(diǎn)擊文件下的退出功能,會(huì)彈出一個(gè)提示框,提醒用戶是否確認(rèn)退出并保存文檔。 界面截圖如下:圖6退出功能 關(guān)鍵代碼如下:private void 退出toolstripmenuitem_click(object sender, eventargs e) if (messagebox.show(你確認(rèn)要退出嗎?, 提示, messageboxbuttons.yesno, messageboxicon.question) =dialogresult.yes) this.close();
11、6、編輯 功能簡(jiǎn)介:在用戶輸入文字時(shí),若有出錯(cuò)或要重復(fù)等內(nèi)容,可以通過編輯來實(shí)現(xiàn)。編輯主要有撤消、剪切、復(fù)制、刪除、全選等功能。界面截圖如下:圖7編輯所含功能關(guān)鍵代碼如下: private void 撤消toolstripmenuitem_click(object sender, eventargs e) /實(shí)現(xiàn)撤消功能 if (this.richtextbox1.canundo = true) this.richtextbox1.undo(); this.richtextbox1.clearundo(); private void 剪切toolstripmenuitem_click(obje
12、ct sender, eventargs e) /實(shí)現(xiàn)剪切功能 int curposition = richtextbox1.selectionstart; clipboard.setdataobject(richtextbox1.selectedtext); richtextbox1.text = richtextbox1.text.substring(0, curposition)+ richtextbox1.text.substring(curposition+richtextbox1.selectedtext.length); richtextbox1.selectionstart =
13、 curposition; private void 復(fù)制toolstripmenuitem_click(object sender, eventargs e) /實(shí)現(xiàn)復(fù)制功能 clipboard.setdataobject(richtextbox1.selectedtext); private void 粘貼toolstripmenuitem_click(object sender, eventargs e) /實(shí)現(xiàn)粘貼功能 idataobject idata = clipboard.getdataobject(); if (idata.getdatapresent(dataformats.
14、text) string clipboardstr = (string)idata.getdata(dataformats.text); int curposition = richtextbox1.selectionstart; richtextbox1.text = richtextbox1.text.substring(0, curposition) + clipboardstr + richtextbox1.text.substring(curposition); richtextbox1.selectionstart = curposition + clipboardstr.leng
15、th; private void 刪除toolstripmenuitem_click(object sender, eventargs e) /實(shí)現(xiàn)刪除功能 int curposition = richtextbox1.selectionstart;待添加的隱藏文字內(nèi)容1 clipboard.setdataobject(richtextbox1.selectedtext); richtextbox1.text = richtextbox1.text.substring(0, curposition) + richtextbox1.text.substring(curposition + ric
16、htextbox1.selectedtext.length); / richtextbox1.selectionstart = curposition; private void 全選atoolstripmenuitem_click(object sender, eventargs e) /全選文本內(nèi)容 this.richtextbox1.selectall(); 7、格式 功能簡(jiǎn)介:在用戶輸入文字時(shí),若想對(duì)內(nèi)容進(jìn)行編輯,可以通過格式菜單來實(shí)現(xiàn)。格式菜單主要有自動(dòng)換行、字體、顏色等功能,用戶可以有選擇的使用。界面截圖如下:圖8編輯字體實(shí)現(xiàn)效果 關(guān)鍵代碼如下: private void 字體to
17、olstripmenuitem_click(object sender, eventargs e) /創(chuàng)建字體對(duì)話框 fontdialog1.showdialog(); richtextbox1.selectionfont = fontdialog1.font; 圖9編輯顏色實(shí)現(xiàn)效果 關(guān)鍵代碼如下: private void 顏色ytoolstripmenuitem_click(object sender, eventargs e) /創(chuàng)建顏色對(duì)話框 colordialog1.showdialog(); richtextbox1.selectioncolor = colordialog1.co
18、lor; 以上就是該記事本運(yùn)行可以實(shí)現(xiàn)的功能的大部分介紹,希望用戶可以方便簡(jiǎn)單的運(yùn)用起來。五、遇到的問題和解決方法 1、使子文檔出現(xiàn)在mdi程序窗體中時(shí),出現(xiàn)this.name=”form1”與this.text=”mdi程序”的異常,經(jīng)過仔細(xì)檢查,原來是先前對(duì)代碼含義理解有誤,應(yīng)在addnewfile()方法中創(chuàng)建子窗體的實(shí)例f,而我們誤創(chuàng)建為父窗體的實(shí)例,故出錯(cuò),正確的寫法是:form2 f=new form();這樣才能與后面的f.mdiparent=this相匹配。 2、在運(yùn)行過程中,會(huì)隨機(jī)地出現(xiàn)未處理的“system.nullreferenceexception”類型的異常出現(xiàn)在未知模塊中及信息,未將對(duì)象引用設(shè)置到對(duì)象的實(shí)例,或出現(xiàn)未處理的“system.argumentexception”類型的異常出現(xiàn)在system.windows.forms.dll 中?!边@樣的兩個(gè)異常錯(cuò)誤,點(diǎn)擊中斷后則會(huì)出現(xiàn)提示“沒有可用的當(dāng)前代碼”。 3、據(jù)題目要求,需
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 年產(chǎn)20000噸高端紡織面料技術(shù)改造項(xiàng)目可行性研究報(bào)告模板-立項(xiàng)備案
- 二零二五年度建材材料采購與環(huán)保評(píng)價(jià)服務(wù)合同范本3篇
- 中國長(zhǎng)期護(hù)理保險(xiǎn)制度發(fā)展現(xiàn)狀及建議
- 護(hù)士職業(yè)生涯規(guī)劃
- 云南省騰沖市第四中學(xué)2024-2025學(xué)年七年級(jí)上學(xué)期期末考試 語文試題(含答案)
- 中圖版高中信息技術(shù)必修1說課稿-2.3 甄別信息的方法-
- Unit 2 Special Days Lesson 1(說課稿)-2023-2024學(xué)年人教新起點(diǎn)版英語五年級(jí)下冊(cè)
- 二年級(jí)上冊(cè)六 制作標(biāo)本-表內(nèi)除法第4課時(shí)《連乘、連除和乘除混合運(yùn)算》(說課稿)-2024-2025學(xué)年二年級(jí)上冊(cè)數(shù)學(xué)青島版(五四學(xué)制)
- 福建省龍巖市新羅區(qū)2024-2025學(xué)年三年級(jí)上學(xué)期期末數(shù)學(xué)試題
- 甘肅省天水市(2024年-2025年小學(xué)六年級(jí)語文)部編版小升初真題(下學(xué)期)試卷及答案
- 醫(yī)美藥品基本管理制度范本
- 思想道德與法治2023版教學(xué)設(shè)計(jì)第六章 學(xué)習(xí)法治思想 提升法治素養(yǎng)
- 霍尼韋爾1900 Honeywell條碼掃描槍設(shè)置
- 公司年度工作總結(jié)會(huì)議議程
- 文徵明《玉女潭山居記(節(jié)選)》原文,注釋,譯文,賞析
- 醫(yī)院醫(yī)療質(zhì)量安全管理工作計(jì)劃以及安全工作記錄
- 《關(guān)于新時(shí)代文明實(shí)踐志愿服務(wù)機(jī)制建設(shè)的實(shí)施方案》
- 鄉(xiāng)村旅游景觀小品裝飾創(chuàng)新創(chuàng)意
- 《甲狀腺的超聲診斷》
- 事業(yè)單位崗位設(shè)置管理工作手冊(cè)-臺(tái)州市事業(yè)單位崗位設(shè)置管理
- 中醫(yī)醫(yī)師定考述職報(bào)告3篇
評(píng)論
0/150
提交評(píng)論