版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、Java程序設(shè)計(jì)期末考查課程設(shè)計(jì)報(bào)告題目:記事本程序設(shè)計(jì)業(yè)級號名績 專班學(xué)姓成信息管理與信息系統(tǒng)信管一班200981020132趙耀兵2010年12月目錄第一章、需求分析 31.1 需求分析 31.2 功能設(shè)計(jì) 3第二章、 概要設(shè)計(jì) 32.1 程序設(shè)計(jì)思路 32.2 模塊說明圖 42.3 程序流程 52.4 程序相關(guān)說明 52.5 程序運(yùn)行界 6第三章 . 程序詳細(xì)設(shè)計(jì)與分析 63.1. 初始化組件 63.2. 構(gòu)建菜單欄及其下拉菜單 63.3. “文件”菜單的事件監(jiān)聽 73.4. “編輯”菜單的事件監(jiān)聽 83.5. 異常處理 8第四章測試分析 9第五章課程設(shè)計(jì)總結(jié) 11第六章、參考文獻(xiàn) 11
2、記事本程序的設(shè)計(jì)摘要: 該報(bào)告中的程序是使用 Java 程序編寫,能夠進(jìn)行輸入文字操作,并具有新 建文件,打開文件,保存文件,退出,復(fù)制,粘貼,剪切等功能,不同之處是本程 序能夠?qū)ξ淖值念伾M(jìn)行設(shè)置。該程序主要用到了 Java swing 和事件監(jiān)聽等。 關(guān)鍵字 : 記事本程序; Java 語言。第一章、需求分析1.1 需求分析現(xiàn)在網(wǎng)絡(luò)上各種文檔編輯器數(shù)不勝數(shù),有 EmEditor ,UEStudio , GridinSoft Notepad ,Notepad+, win32pad , SkimEdit ,UniRed, xint 。功能也是應(yīng)有盡 有,有能改變字體的,有能改變文字顏色的。但是
3、,這些軟件又存在各種各樣的瑕 疵或問題:有的文件體積相對于一般文字編輯來說太大;有的功能太繁雜,使初級 使用者一時難以掌握。僅從日常應(yīng)用方面來說,一個文本編輯器只需一些簡單實(shí)用 的功能就夠了。本程序設(shè)計(jì)就是依照這樣一種使用需要設(shè)計(jì)了一個的記事本程序 。1.2 功能設(shè)計(jì)本程序要構(gòu)建的記事本程序參照了 Win dows操作系統(tǒng)的記事本工具,其功能有 以下幾個方面 :(1)菜單中有“文件”,“編輯”,“關(guān)于”三個主菜單。(2)“文件”有“新建”“打開”“保存”“退出”四個子菜單:分別用于新 建文件,打開文件,保存文件,退出記事本。(3)“編輯”中有“剪切”“復(fù)制”“粘貼”“顏色”三個字菜單:用于剪切
4、文字,復(fù) 制文字,粘貼文字。增加了“顏色”子菜單來對文字的顏色進(jìn)行(4)“關(guān)于”菜單中有關(guān)于記事本程序的制作日期,作者等信息第二章、 概要設(shè)計(jì)2.1 程序設(shè)計(jì)思路在本程序中,設(shè)計(jì)了 一個菜單欄和文本內(nèi)容區(qū)。設(shè)計(jì)過程中用到了 JScrollPane ,JMenu JTextPane,JFileChooser 等。JMenu用來制作菜單,菜單包 括“文件” “編輯”“關(guān)于”。JTextPane主要用來輸入文本。為了加入顏色的設(shè)置, 所以加了一個JColorChooser組件。2.2模塊說明圖在圖中,首先創(chuàng)建一個名為my no tepad的類并繼承JFrame類作為最底層的容器在圖中,構(gòu)造一個my
5、notepad類時要做三件事情,分別是初始化容器(i ni tTextC on te nt 器。)、初始化組件(initMenu、initAboutDialog )、設(shè)置事件監(jiān)聽2.3程序流程2.4程序相關(guān)說明整個記事本分為2快:菜單欄和內(nèi)容輸入?yún)^(qū)。本程序中首先定義一個mynotepad類繼承JFrame作為最底層容器。(1).Textcontent 為程序文本輸入?yún)^(qū)。(2).Menu為菜單欄。(3).AboutDialog為關(guān)于對話框。(4).要想記事本完成需求分析中相應(yīng)的功能,還必須添加事件監(jiān)聽器。事件監(jiān)聽器不僅要添加在菜單欄和內(nèi)容輸入?yún)^(qū),還需加在容器中。本程序中ActListener實(shí)現(xiàn)
6、了 ActionListener 接口,用來監(jiān)聽并處理所有菜單項(xiàng)和內(nèi)容輸入 區(qū)為事件源的事件。另外,還用來 WindowListener來監(jiān)聽處理容器關(guān)閉觸發(fā)的事件, WindowListener 繼承了 WindowsAdapter類并覆蓋了 WindowsClosing 方法。2.5程序運(yùn)行界魚我的記爭本稈序1口|回laari文件編輯關(guān)于第三章.程序詳細(xì)設(shè)計(jì)與分析3.1. 初始化組件in itTextCo nte nt();ini tMe nu();ini tAboutDialog();3.2. 構(gòu)建菜單欄及其下拉菜單JMenu men us=new JMenunew JMenu(” 文件
7、"), new JMenu("編輯"), new JMenu(” 關(guān)于");JMenultem optionofmenu=new JMenultem new JMenultem(” 新建"), new JMenultem(” 打開"), new JMenultem(” 保存"), new JMenultem(” 退出"),new JMenultem(” 復(fù)制"),new JMenultem(” 剪切"),new JMenultem(” 粘貼"),new JMenultem(” 顏色&q
8、uot;),關(guān)于”)new JMe nultem(”二我的迅爭本程序-兇 文件輪輯關(guān)于新建打并保存退出3.3. “文件”菜單的事件監(jiān)聽Acti on Liste ner action=new Actio nListe ner()public void action Performed(Acti onEvent e)String n ame = e.getAct ion Comma nd();JMe nultem MI=(JMe nultem)e.getSource();if("新建".equals(name) conten t.setText("");
9、file=n ull;else if("打開".equals(name)if(file !=n ull)ope nfile.setSelectedFile(file);int returnVal=openfile.showOpenDialog(mynotepad.this); if(returnVal=JFileChooser.APPROVE_OPTION)file=ope nfile.getSelectedFile();un fold();else if("保存".equals(name)if(file!=null) openfile.setSelec
10、tedFile(file);int returnVal=openfile.showSaveDialog(mynotepad.this); if(returnVal=JFileChooser.APPROVE_OPTION) file=ope nfile.getSelectedFile();savi ng();else if("退出".equals(name)myno tepad f=new myno tepad();int s=JOptionPane.showConfirmDialog(f," 退 出 ? "," 退 出 ",JOpti
11、onPane.YES_NO_OPTION);3.4. “編輯”菜單的事件監(jiān)聽else if(" 剪切 ".equals(name)content.cut();else if(" 復(fù)制 ".equals(name) content.copy();else if(" 粘貼 ".equals(name) content.paste();else if(" 顏色 ".equals(name) color=JColorChooser.showDialog(mynotepad.this,"",color);
12、 content.setForeground(color);3.5. 異常處理在運(yùn)行程序代碼是有可能會產(chǎn)生異常情況或異常事件,為了避免這種情況,就 需要在程序中用到 Java 異常處理機(jī)制。本程序中選用的異常處理機(jī)制是 try ,catch 捕獲處理異常的第一步是用 try 選定要監(jiān)控的異常范圍, try 后跟隨 catch 代碼塊tryFileWriter Writef=new FileWriter(file);Writef.write(content.getText();Writef.close();catch(Exception e)e.printStackTrace();void un
13、fold()tryFileReader Readf=new FileReader(file); int len=(int)file.length();char buffer=new charlen;Readf.read(buffer,0,len);Readf.close();content.setText(new String(buffer); catch(Exception e)e.printStackTrace();第四章.測試分析交件i“文件”菜單中的“打開”對話框立洋 臨整K于一 I 口I X|“文件”中的“退出”功能|S I J蠹我的記苯本程月文件編輯關(guān)于_l-J_I_LJ_I_1_
14、I_I_I_LJ_I_I_U1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1JJJJMU-U-I-UJJJJJJ.丄1111 ! 1 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 JJJ+_1 丄_!丄丄_IJJ-_1丄丄JJJJ_!_I 11J1 1II10.0,0預(yù)監(jiān)樣品文本拝品立本樣品文本欄品文本樣品文為祥品文本“編輯”中的“顏色”設(shè)置功能“關(guān)于”菜單中的功能第五章課程設(shè)計(jì)總結(jié)經(jīng)過差不多四個星期的努力,基本上完成我的 Java課程設(shè)計(jì)一記事本程序,也 基本上實(shí)現(xiàn)了我在需求分析時所預(yù)期的功能。通過這次的課程設(shè)計(jì),使將我從書本 上學(xué)習(xí)到的理論知識用到了實(shí)踐上,從而進(jìn)一步鞏固和豐富了我所學(xué)過的知識,讓 我更深層次地認(rèn)識到Java及其強(qiáng)大的功能。同時,做這門課程設(shè)計(jì)也進(jìn)一步加強(qiáng)了 我的動手能力。為了完成好這次課程設(shè)計(jì),我提前做了較多的準(zhǔn)備,一邊上
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 簡易勞務(wù)分包合同范本頁2024年
- 2024股份協(xié)議書樣本
- 失禁相關(guān)性皮炎
- 2024年醫(yī)療耗材采購合同
- 保安公司用工協(xié)議樣本
- 農(nóng)藥分銷協(xié)議樣本
- 社區(qū)租房合同文本
- 房地產(chǎn)項(xiàng)目承包管理合同
- 潤滑油采購合同的環(huán)保要求
- 創(chuàng)作者版權(quán)聲明與保護(hù)合同
- 產(chǎn)品設(shè)計(jì)中材料選擇與開發(fā)
- 工程結(jié)算匯總表及工程結(jié)算明細(xì)表(范本)
- 管線管廊布置設(shè)計(jì)規(guī)范
- 《會計(jì)平衡公式》教案
- 八年級黃金矩形(數(shù)學(xué)活動)ppt課件
- 銷售技巧個頂尖電梯銷售技巧
- 《幼兒園衛(wèi)生保健后勤材料資料》幼兒園保健醫(yī)生每日檢查工作記錄表
- 葡萄糖生產(chǎn)教程
- 需求價(jià)格彈性案例分析
- 企業(yè)內(nèi)部通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 計(jì)算機(jī)論文
- 重大決策合法性審查表.doc
評論
0/150
提交評論