Java綜合性實驗報告-寫字板軟件(含代碼)_工學(xué)_高等教育_教育專區(qū)_第1頁
Java綜合性實驗報告-寫字板軟件(含代碼)_工學(xué)_高等教育_教育專區(qū)_第2頁
Java綜合性實驗報告-寫字板軟件(含代碼)_工學(xué)_高等教育_教育專區(qū)_第3頁
Java綜合性實驗報告-寫字板軟件(含代碼)_工學(xué)_高等教育_教育專區(qū)_第4頁
Java綜合性實驗報告-寫字板軟件(含代碼)_工學(xué)_高等教育_教育專區(qū)_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、xxxxxx計算機系綜合性實驗實驗報告課程名稱java程序設(shè)計a實驗學(xué)期 xxxx至 xxxx學(xué)年第x學(xué)期學(xué)生所在系部計算機系年級 xxxx專業(yè)班級xxxxxx學(xué)生姓名xxx學(xué)號xxxxxxxxxxxx任課教師xxx實驗成績計算機系制java程序設(shè)計a課程綜合性實驗報告開課實驗室:年 月曰實驗題目簡易寫字板軟件設(shè)計一、實驗?zāi)康耐ㄟ^編寫java的應(yīng)用系統(tǒng)綜合實例簡易寫字板軟件,總結(jié)、回顧和實踐面向?qū)ο蟮木?程思想以及編程方法,并通過編寫程序來掌握java語言編程技巧,將學(xué)習(xí)到的知識融會貫通, 同時提髙調(diào)試程序的能力,養(yǎng)成良好的編程習(xí)慣,并增強對程序設(shè)計整體思路的把握。程序使用net beans集

2、成開發(fā)環(huán)境完成,熟悉并掌握在net beans開發(fā)環(huán)境下編寫java程序。 設(shè)備與環(huán)境硬件:多媒體計算機軟件:windows 2000以上的操作系統(tǒng)、jdk開發(fā)包、jdva集成開發(fā)環(huán)境等。三、實驗內(nèi)容總體要求:程序界面友好,代碼的可維護性好,包括必要的注釋和相應(yīng)的文檔。具體要求:基本的文本錄入,字符修改,刪除,換行,粘貼,復(fù)制,剪切等功能,主要包括:1. 菜單欄設(shè)計及功能實現(xiàn):菜單欄主要包括文件、編輯、格式、幫助等常見菜單。其中文件菜單有新建、打開、保存、另存為、退出等功能;編輯菜單有剪切、復(fù)制、粘貼、 查找和查找替換等功能;格式菜單含冇對文字字體、字型、字號及顏色等的設(shè)置功能。2. 編輯區(qū)設(shè)

3、計:對文本的編輯處理區(qū)。3. 工具欄設(shè)計:可根據(jù)需要增加該項功能。4. 其他功能設(shè)計。四、實驗結(jié)果及分析(一)主界面的設(shè)計與實現(xiàn)設(shè)置窗體的大小等基本屬性及菜單項中的功能列表項public mynoteofrm. settitlec記事本");frm. add (jsp);tx. seteditable(false);lx. addmouselistener(this);tx. setsel ectioncolor (new color (100, 150, 250);jsp. setviewportviewtx);frm. getcontentpanc() addjsp, borde

4、rlayout. center ;jmenubar jmb = new jmenubar();jmenu jml = new jmenuc文 件(f)");string: label 1 = 新建,打開,保存,另存為,退出 ;jmenuitem jmi1 = new jmenuitemlabell. length;for (int i = 0; i < jmi1. length; i+) jmi 1 i = new jmenuitemdabolli);jml. add(jmili);jmili. addactionlistoner(this);jml. insertsepara

5、tor(1);jml. insertseparator(3);jml. insertseparator(6);jmenu jm2 = new jmenu c"編 輯(e)");string: label2 = 撤銷,剪切,復(fù)制",粘貼,刪除,查找,替換,“ 全選時間/日期";jmenuttem jmi2 = new jmenuttemlabel2. length;for (int i = 0; i < jmi2.1ength; i+)jmi2i = new jmenuitem(label2i);jm2. add(jmi2ij);jmi 2i. ad

6、dactionli stener(this);jm2. insertseparator(1);jin2. insertseparator (5);jin2. insertseparator (7);jin2. insertseparator (10);jmenu jm3 = new jmenu格 式(0)");jmenu i tom jmi3 = new jmenu i tern (z/ 自動換彳亍”);jmi3. addactionlistener(this);jmenu jm3_l = new jmenu c字體大小");string: label3_l = 10, 2

7、0, 30, 40, 50 ;jmenuitem jmi3_l = new jmenultemlabel3_l. length;for (int i = 0; i < jmi3_l. length; i+)jmi3_li = new jmenuitem(label3_li);jm3_l. add(jmi3_li);jmi3_li. addactionlistener(this);jmenu jm3 2 = new jmenu(,z字體顏色);stringu label3_2 = 紅色,綠色,藍色,品紅:桔黃 ;jmenuitem jmi3 2 = new jmenuitemlabel3

8、2.length; for (int i = 0; i < jmi3_2. length; i+) jmi3 2i = new jmenultcm(label3 2i);jm3_2. add(jmi3_2i);jmi3_2i addactionlistener(this);jmenu jmd = new jmenu幫 助(h);jmenuitem jmi4 = new jmenuitemc關(guān)于“); jm4. add (jmi4);jmid. addactionlistener (this);jm3. add(jmi3);jm3. add (jm3_l);jm3. add (jm3_2)

9、;jmb. add (jml);jmb. add (jm2);jmb add(jm3);jmb add(jm4);jbl. addacti on listener (this);jb2. addactionlistener (this);jb3. addacti on listener (this);jb4. addacti on listener (this); ebl addltemlistenor (this); ckbl_ 1. addltemlistencr(this); ckbl_2. addltemlistencr(this);frm setjmenubar(jmb);frm.

10、pack ();frm. setsize (950, 540);frm. setlocation(160,120);frm. setvisible(tme);frm. set iconimage (/getlmageo);frm. addwindowlistener(new windowadapter ()public void windowclosing(windowevent e)frm. removeall ();frm. dispose ();i);(二)文件菜單的設(shè)計與實現(xiàn)文件欄的實現(xiàn)1. 新建功能的實現(xiàn):if (comm.equals ("新建")dress =

11、" ”;tx.settext(” ”);xjsign = 1;tx.seteditable(true);frm.settitle (”無題一記事本”);2. 打開功能的實現(xiàn):選擇打開路徑后開始執(zhí)行打開功能,首先會提醒用戶選擇文件,選擇文 件后程序會口動獲取文件名和相關(guān)的路徑(如果沒有選擇則返回),具體實現(xiàn)代碼如下:public void openfile()/扌j開dress = h h;font f = tx.getfont();string name = f.getname();int style = f.getsty丄e();filedialog fd = new filedi

12、alog (frma ”打開”);fd.-s4=tew ();if (fd.getfile () = null) /如果沒有選擇文件,則返回return;frm. settitle (fdgetfi.e() + ”一記事本”);trydress = fd.getdirectory() + file.separator + fd.getfile();/ 取得文件名包括路徑;filelnputstream io = new filelnputstream (dress) ; /至0路徑byte a = new byteioavailable();ioread(a);ioclose();string

13、 str = new string(a);tx.setfont(new font(name,style,15);tx.seteditable(true);data = str;tx.settext(str);catch(exception g) 3. 保存功能的實現(xiàn):點擊保存后會彈出對話框,如果用戶還沒有新建文本則提醒用戶“您還 沒有新建文木文檔”,新建文木后點擊保存會按用戶設(shè)定的路徑保存文木,具體代碼如下:if (comm, equals ( ”保存”)if(dress !="")tryfileoutput st ream f o = new fileo ut put s

14、t ream (c/ress);string str = tx.gettext();fo.write(str getbytes();fo close ();catch(exception h)else if(dress = ” ”&&xjsign = 1)filedialog fd = new filedialog (frm, filedialog. save);fd.ohow();savefile(fd);elsejoptionpane showmess<agedf<a_zog(nul,"你還未新建文本文檔! ”);4. 另存為功能的實現(xiàn):點擊另存為,彈

15、出對話框,如果用戶還沒冇新建文本則提醒用戶“您 還沒冇新建文本文檔”,新建文木后則讓用戶選擇要期存為的路徑,保存文木,具體代碼如下:if (comm, equals (另存為 n )if (xjsign = 1)filedialog fd = new filedialog (frmzf filedialog. save);fd-s4ew ();savefile(fd);elsejopt ionpane . showmessagedialog (null, ”你還未新建文木文*當(dāng)! ”);編輯欄功能實現(xiàn)1. 撤銷,剪切功能的實現(xiàn):if (commequals (”撤¥肖”)string

16、 change = tx.gettext();tx.settext(data);int lenl = 0alen2 = 0;lenl = change 1ength();len2 = data.length();if(len2>lenl)tx.select(lenl, len2);elsetxselect(len2, lenl);data = change;if (comm. equals (”剪切”)jian = 1;fuzhistr = tx.getselectedtext();tx.replaceselection("");2. 復(fù)制,粘貼功能的實現(xiàn):if (c

17、omm, equals (”復(fù)制”)jian = 0;fuzhistr = n n;fuzhistr = tx.getselectedtext();tx.copy();if (comm. equals (”#占犯i”)int start = tx.getcaretposition ();tx.insert(fuzhistr, start);if(j ian = 1)fuzhistr = ,f n;3. 查找替換功能的實現(xiàn):點擊查找和替換都會彈出一個對話框,查找對話框會提醒用 戶根據(jù)什么杏找,杏找內(nèi)容,用戶可根據(jù)自己的需要進行杳找;替換對話框會提醒用戶先杏 找已有的內(nèi)容,然后需要把內(nèi)容替換為什么

18、,然后進行替換,具體實現(xiàn)代碼如下:if (comm.equals ("查找”)if(thd = 0)set = 0;qufen = 1;czd = 1;search ();if (e . getsource () = jbl)/杳找string czstri = 1111;string strain = 11h;int n = 0;czstr = tx.gettext();strall = jtf.gettext();czstrl = czstr.tolowercase();strain = strall. tolowercmse ();if(fangxiang = 0)if(quf

19、en = 0)if(czsign = 0)n = czstr.indexof(strall, set);elsen = czstr.indexof(strallf set +elseif(czsign = 0)n = czstrl. indexof (strain, set)elsen = czstrl. indexof (strain, setelseczsign = 1;if(qufen = 0)n = czstr.lastlndexof(stroll, set 一elsen = czstrl lastindexof (strain, setif (n != -1)if(fangxiang

20、 = 0)strajljl length ();+ stralllength();stralllength();一 stralllength();set = n + 1;elseset = n - 1;tx.setselectionstart(n);tx.setselectionend(n + stralllength(); elsestrall);joptionpane . showmessagedialog (null找不至【j"if (e . getsource ()= 力2)/取消jdremoveall ();jd.dispose();czd = 0;thd = 0;if (

21、comm. equals ("替換”)if(czd = 0)set = 0;qufen = 1;thd = 1;tihuan ();if (e .getsource () = jb3)/替換string str = jtft.gettext();int start = set 一 1;tx.replaceselection(str);tx select(start,start + str.length();if (e.getsource () = jb4) /全部替換string czstrl = h h;string stralll = n h;string strl = ”;in

22、t nl = 0小2 = 0;int setl = 0;czstr = tx.gettext ();strall = jtf.gettext();strl = jtft.gettext();czstrl = czstr.tolowercase();strain = strall tolowercase ();if(qufen = 0)n2 = czstr.lastlndexof(strall);elsen2 = czstrl.lastindexof(stralll);while(setl <= n2)if(qufen = 0)nl = czstr.indexof(strallf set1

23、);elsenl = czstrlindexof (strain, setl);if (nl != -1)setl = nl + 1;tx.setselectionstart(nl);tx.setselectionend(nl + stralllength(); tx.replaceselection(strl);4. 全選/時間/fl期功能設(shè)定if (comm.equals ("全選")tx.selectall();if (comm, equals (”吋間 / h 期")int start = tx.getcaretposition ();date d = n

24、ew date ();simpledateformat sdf = new simpledateformat(ukk:mm yyyy/mm/dd”);string str = sdf.format(d);tx.insert(strf start);工具欄的實現(xiàn):1. 自動換行功能實現(xiàn)if (comm.equals (” 自動換行”)tx setlinewrap(true);2. 字體大小功能實現(xiàn):字體大小功能設(shè)置比較簡單,設(shè)置了 5中大小字體,分別為10, 20, 30, 40, 50用戶可以根據(jù)自己的需要進行選擇然后輸入,具體代碼如下:if(comm.equals("10 h)七x

25、.setfont(new font(name,style,10);if(commequals("20”)tx.setfont(new font(name,stylez 20);if(commequals(u30n)txsetfont(new font(name,style,30);if(comm.equals("40”)txsetfont(new font(name,style,40);if (comm, equals (*' 50 *')txsetfont(new font(name,style,50);3字體顏色功能實現(xiàn):顏色設(shè)置了幾只能夠比較簡單的色彩,紅綠藍,用戶可根據(jù)口己的喜好進行選擇,具體代碼如下:if (comm.equals ( ”纟色”)tx.setforegrou

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論