資源描述:
《java論文題材》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、目錄一、概要設(shè)計(jì)……………………………………………………………3二、程序整體設(shè)計(jì)說明…………………………………………….…..4三、程序部分源代碼及注釋…………………………………………….9四、測試結(jié)果………………………………………………………….24五、設(shè)計(jì)心得…………………………………………………………25六、致謝…………………………………………………………25七、參考文獻(xiàn)…………………………………………………………25【摘要】該程序是一個圖形界面的java文檔編輯器,其界面主要采用了awt包,程序?qū)崿F(xiàn)了文本編輯器的基本功能有:新建文件、打開文件、文件保存、文件另存為
2、、剪切、復(fù)制、粘貼、刪除、查找/替換、改變字體大小,另外還利用Time類的schedule方法實(shí)現(xiàn)了文件的定時自動更新功能,并創(chuàng)建備份文件,由于該編輯器是用的awt包,所以在技術(shù)上沒有實(shí)現(xiàn)將Java的關(guān)鍵字以不同顏色顯示功能?!娟P(guān)鍵字】java編輯器一、概要設(shè)計(jì)Java程序編輯器是:圖形界面、線程、流與文件等技術(shù)的綜合應(yīng)用。圖形界面的實(shí)現(xiàn):考慮到簡單、實(shí)用、高效等特點(diǎn),就選擇了AWT來完成實(shí)現(xiàn),在選擇組件上,文本編輯區(qū)就選用了TaxtArea作為主要的部件。線程實(shí)現(xiàn)文件自動保存:在相關(guān)的參考書上查閱到在Time類中有一個schedule方法可以在后臺自動完成一定的功能,而
3、且調(diào)用起來相當(dāng)簡單,于是就用了Time類中的schedule方法來實(shí)現(xiàn)文件自動保存及備份功能。文件操作的實(shí)現(xiàn):利用了字符文件流FileReader和FileWriter類來實(shí)現(xiàn)。由于Java的特性,可能用任何一個編輯器來編輯,于是就將Windows中的記事本作為模仿對象,根據(jù)實(shí)現(xiàn)情況刪減了其中的一些功能,如自動換行,設(shè)置字體,打印等功能。在設(shè)計(jì)類的時候,考慮到簡單明了,就用了兩個類,一個主類和一個默認(rèn)屬性類作為程序的整體框架,所有的對象和方法都是在默認(rèn)屬性類中創(chuàng)建和實(shí)現(xiàn)的,以及為各組件注冊事件監(jiān)聽程序也是在默認(rèn)屬性類中實(shí)現(xiàn)的。主類完成對象的實(shí)例化及顯示。這們設(shè)計(jì)的優(yōu)點(diǎn)是:
4、條理清晰,容易理解,容易修改。這樣設(shè)計(jì)的缺點(diǎn)是:不利于共享類中的方法。二、程序整體設(shè)計(jì)說明2.1、程序框架圖2.2、程序中所用類說明(1)用戶自定義類類名:EditInstantiation作用:實(shí)例化對象繼承的父類:WindowAdapter主要成員變量:FramemyFrm//定義主窗體TextAreamyText//定義文本編輯區(qū)DialogmyDlgFind,myDlgFindont//查找及設(shè)置字體對話框TextFieldTFfind,TFreplace,TffontSize//查找對話框和字體窗體中的文本行ButtonBfontOK,Bfind,Breplac
5、e,Bnext,Bcancel//定義和創(chuàng)建各按鈕LabelLf,Lr,Ls//定義和創(chuàng)建各標(biāo)簽MenuBarMbbar//定義和創(chuàng)建主菜單MenuMfile,Medit,Mformation,Mhelp//定義和創(chuàng)建主菜單中的選項(xiàng)ToolkittoolKitClipboardmyCB//剪切板對象FileDialogmyFDlg//定義文件對話框ChoiceChfontName//定義和創(chuàng)建字體選擇框privateintVIindex=1;//構(gòu)成文件名后綴變量privateStringVSsubFixStr=".java";//構(gòu)成文件名擴(kuò)展名變量privateStr
6、ingVSmyFileName="Document1",VSmyBFileName;//文件名及備份文件名變量privateFileVFmyFile=newFile(VSmyFileName+VIindex+".java");//文件名變量privateintVIsearchPosition=0;//查找位置指針privateTimerVTtime;//實(shí)例化一個Time類privateintVImin=1;//schedule方法中的一個時間參數(shù)privateintVItype=JOptionPane.INFORMATION_MESSAGE;//提示對話框類型priva
7、teStringVStitle;//提示對話框標(biāo)題privateStringVSmessage;//提示對話框信息privatebooleanVBchanged=true;//改變字體的一個標(biāo)識privateintVIfontSizeMin=8,VIfontSizeMax=40,VIfontSizeChangedStep=2;//設(shè)置字體大小及步長主要成員方法:publicvoidinit()//初始化各部件菜單的定義和事件的監(jiān)聽publicvoiddisplayEdit()//顯示窗體及調(diào)用Time中的schedule方法p