Java課程設(shè)計(jì) 記事本 課程設(shè)計(jì)

上傳人:仙*** 文檔編號(hào):32751687 上傳時(shí)間:2021-10-15 格式:DOC 頁(yè)數(shù):21 大?。?61.51KB
收藏 版權(quán)申訴 舉報(bào) 下載
Java課程設(shè)計(jì) 記事本 課程設(shè)計(jì)_第1頁(yè)
第1頁(yè) / 共21頁(yè)
Java課程設(shè)計(jì) 記事本 課程設(shè)計(jì)_第2頁(yè)
第2頁(yè) / 共21頁(yè)
Java課程設(shè)計(jì) 記事本 課程設(shè)計(jì)_第3頁(yè)
第3頁(yè) / 共21頁(yè)

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《Java課程設(shè)計(jì) 記事本 課程設(shè)計(jì)》由會(huì)員分享,可在線閱讀,更多相關(guān)《Java課程設(shè)計(jì) 記事本 課程設(shè)計(jì)(21頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、 課程設(shè)計(jì)說(shuō)明 課程名稱: Java課程設(shè)計(jì) 設(shè)計(jì)題目: 記事本 專 業(yè): 班級(jí): 學(xué)生姓名: 學(xué) 號(hào): 指導(dǎo)教師: 科技學(xué)院教務(wù)部 制 年 月 日 一、系統(tǒng)設(shè)計(jì)目的: 1)設(shè)計(jì)一個(gè)簡(jiǎn)單的Windows記事本,可以實(shí)現(xiàn)以下功能: 1:文件的新建,打開,保存;

2、 2:對(duì)文件的編輯,如全選,復(fù)制,剪切,粘貼; 3、工具,進(jìn)行大小寫的轉(zhuǎn)換 4:執(zhí)行完操作后,能夠順利關(guān)閉記事本; 2)通過(guò)這次設(shè)計(jì),可以幫助學(xué)生: 1:提高對(duì)Java語(yǔ)言設(shè)計(jì)的掌握能力; 2:理論聯(lián)系實(shí)際,進(jìn)一步提高學(xué)生的軟件開發(fā)技術(shù); 3:培養(yǎng)學(xué)生分析、解決問(wèn)題的能力。 二、系統(tǒng)實(shí)現(xiàn)思路: 設(shè)計(jì)兩個(gè)類,一個(gè)mynotepad類,具有程序的要求和功能再創(chuàng)建一個(gè)Notepad主類,在主類中創(chuàng)建一個(gè)mynotepad類的對(duì)象,就可以直接在編譯器中運(yùn)行程序。 1:界面設(shè)計(jì) 在主界面中設(shè)計(jì)一個(gè)iFrame容器,并在其中加入一個(gè)下拉菜單和一個(gè)文本域控件。 2:功能

3、設(shè)計(jì) 在下拉菜單中加入子菜單并進(jìn)行監(jiān)聽,分別實(shí)現(xiàn)對(duì)文件的操作功能。點(diǎn)擊不同菜單項(xiàng)時(shí),進(jìn)行不同的操作。 3:代碼設(shè)計(jì) 編寫每個(gè)控件的相關(guān)代碼,并進(jìn)行調(diào)試。 三、系統(tǒng)詳細(xì)設(shè)計(jì) 1:界面設(shè)計(jì) 創(chuàng)建一個(gè)下拉菜單和文本域,在文本域中顯示編輯的文件信息。 主要代碼: JMenu[] menus=new JMenu[]{ new JMenu("文件"), new JMenu("編輯"), new JMenu("工具"), new JMenu("關(guān)于") }; JMenuItem optionofmenu[][]=new JMenu

4、Item[][]{{ new JMenuItem("新建"), new JMenuItem("打開"), new JMenuItem("保存"), new JMenuItem("退出") }, { new JMenuItem("復(fù)制"), new JMenuItem("剪切"), new JMenuItem("粘貼"), new JMenuItem("文字顏色"), new JMenuItem("背景顏色") },

5、 { new JMenuItem("大寫轉(zhuǎn)小寫"), new JMenuItem("小寫轉(zhuǎn)大寫"), }, { new JMenuItem("關(guān)于") } }; void initMenu(){ for(int i=0;i

6、 for(int j=0;j

7、(){ //事件 public void actionPerformed(ActionEvent e){ String name = e.getActionCommand(); JMenuItem MI=(JMenuItem)e.getSource(); if("新建".equals(name)){ content.setText(""); file=null; }else if("打開".equals(name)) { if(file !=null

8、)openfile.setSelectedFile(file); int returnVal=openfile.showOpenDialog(mynotepad.this); if(returnVal==JFileChooser.APPROVE_OPTION){ file=openfile.getSelectedFile(); unfold(); }

9、 }else if("保存".equals(name)) { if(file!=null) openfile.setSelectedFile(file); int returnVal=openfile.showSaveDialog(mynotepad.this); if(returnVal==JFileChooser.APPROVE_OPTION) {

10、 file=openfile.getSelectedFile(); saving(); } }else if("退出".equals(name)) { mynotepad f=new mynotepad(); int s=JOptionPane.showConfirmDialog(f,"退出?","退出",JOptionP

11、ane.YES_NO_OPTION); if(s==JOptionPane.YES_OPTION) System.exit(0); } else if("剪切".equals(name)) { content.cut(); } else if("復(fù)制".equals(name))

12、 { content.copy(); } else if("粘貼".equals(name)) { content.paste(); }else if("文字顏色".equals(name)){ color=JColorChooser.showDialog(mynotepad.this,"",color);

13、 content.setForeground(color); }else if("背景顏色".equals(name)){ color=JColorChooser.showDialog(mynotepad.this,"",color); content.setBackground(color); } else if("大寫轉(zhuǎn)小寫".equals(name)){ String st

14、r=content.getText(); String str1=str.toLowerCase(); content.setText(str1); } else if("小寫轉(zhuǎn)大寫".equals(name)){ String str=content.getText(); String str1=str.toUpperCase(); content.setText(str1);

15、 } else if("關(guān)于".equals(name)){ JOptionPane.showMessageDialog(null,"程序制作:鄭澤波&魯裕浩&歐陽(yáng)國(guó)勝&曾成成","關(guān)于",JOptionPane.INFORMATION_MESSAGE); } 四、系統(tǒng)調(diào)試運(yùn)行 1:界面調(diào)試 確定主窗體,設(shè)置主窗體的屬性,對(duì)窗體進(jìn)行布局,加入所需控件并對(duì)控件進(jìn)行初始化。在完成加入菜單控件后,不能缺少this.setJMenuBar(menu); 語(yǔ)句,將menu設(shè)為主窗體的菜單條,否則會(huì)看

16、不到菜單欄。 如圖: 2:功能調(diào)試 打開功能: 保存功能: 五、課程設(shè)計(jì)心得 經(jīng)過(guò)一個(gè)星期的我的記事本的課程設(shè)計(jì),我在向華萍老師的指導(dǎo)下,順利完成該課程設(shè)計(jì)。通過(guò)該課程設(shè)計(jì),收獲頗多。 首先,讓我加深了對(duì)Java語(yǔ)言的理論知識(shí)的理解; 其次,讓我更加熟練的掌握了Java語(yǔ)言的設(shè)計(jì)能力并且有了實(shí)踐經(jīng)驗(yàn); 再次,在設(shè)計(jì)過(guò)程中,學(xué)到了老師沒(méi)有在課堂上沒(méi)有教授的知識(shí); 最后,加強(qiáng)了我對(duì)Java語(yǔ)言的學(xué)習(xí)興趣和好感。 六、參考文獻(xiàn): [1] 耿詳義,張躍平. Java 2 實(shí)用教程. 北京:清華大學(xué)出版社,2004.2

17、[2] 張利國(guó).Java實(shí)用教程案例.北京:清華大學(xué)出版社,2003.10 [3] 周曉聰,等.面向?qū)ο蟪绦蛟O(shè)計(jì)與Java語(yǔ)言.北京:機(jī)械工業(yè)出版社,2004.3 [4] 李尊朝.Java語(yǔ)言程序設(shè)計(jì).北京:中國(guó)鐵道出版社,2004.2 [5] (美)Philip Heller.Complate Java 2 Certification Study Guide Fourth Edition(Java 2 證學(xué)習(xí)指南) (第四版 英文版). 北京:電子工業(yè)出版社,2004.1 七、附 錄 程序源代碼: import java.awt.event.*; import ja

18、va.awt.*; import java.io.*; import java.lang.String; class jsb implements ActionListener { Dialog bb; String strt; int i; FileDialog fd; File file; public Frame f; public TextArea p1; public MenuBar menubar; public Menu menu1,menu2,menu3; public MenuItem item1,item2,item3

19、,item4,item5,item6,item7,item8,item9,item10; jsb(String s) { i=0; f=new Frame(s); p1=new TextArea(""); f.setSize(500,500); f.setBackground(Color.white); f.setVisible(true); menubar=new MenuBar(); menu1=new Menu("文件"); menu2=new Menu("編輯"); menu3=new Menu("幫助"); item1=new Men

20、uItem("新建"); item2=new MenuItem("打開"); item3=new MenuItem("保存"); item4=new MenuItem("另存為"); item5=new MenuItem("退出"); item6=new MenuItem("全選"); item7=new MenuItem("復(fù)制"); item8=new MenuItem("剪切"); item9=new MenuItem("粘貼"); item10=new MenuItem("關(guān)于"); f.addWindowListener(new WindowA

21、dapter() { public void windowClosing(WindowEvent e) {f.setVisible(false);System.exit(0);} }); menu1.add(item1); menu1.add(item2); menu1.add(item3); menu1.add(item4); menu1.add(item5); menu2.add(item6); menu2.add(item7); menu2.add(item8); menu2.add(item9); menu3.add(item10

22、); menubar.add(menu1); menubar.add(menu2); menubar.add(menu3); f.setMenuBar(menubar); item1.addActionListener(this); item2.addActionListener(this); item3.addActionListener(this); item4.addActionListener(this); item5.addActionListener(this); item6.addActionListener(this); item7.

23、addActionListener(this); item8.addActionListener(this); item9.addActionListener(this); item10.addActionListener(this); f.setLayout(new GridLayout(1,1)); f.add(p1);f.pack(); } public void actionPerformed(ActionEvent e) { String ss; ss=p1.getText().trim(); if (e.getSource()==item

24、5) { if (i==0 &&(ss.length()!=0)) { bc(); } else { System.exit(0); } } if (e.getSource()==item1) { if (i==0&&(ss.length()!=0)) { bc(); } else { p1.setText("");i=0;f.setTitle("文件對(duì)話框"); } } if (e.getSource()==item2) { fd=new FileDialog(f,"打開文件",0); fd.setVi

25、sible(true); try{ file=new File(fd.getDirectory(),fd.getFile()); f.setTitle(fd.getFile()+"文件對(duì)話框"); FileReader fr=new FileReader(file); BufferedReader br=new BufferedReader(fr); String line = null; String view = ""; while((line=br.readLine())!=null) { view += line+"\n"; } p1.se

26、tText(view); br.close(); fr.close(); } catch(IOException expIn) {} } if (e.getSource()==item3) { if (i==0) { bc(); } else { try{ file=new File(fd.getDirectory(),fd.getFile()); f.setTitle(fd.getFile()+"--記事本"); FileWriter fw=new FileWriter(file); BufferedWriter b

27、w=new BufferedWriter(fw); String s =p1.getText(); s = s.replaceAll("\n","\r\n"); bw.write(s); bw.flush(); bw.close(); fw.close(); i=1; } catch(IOException expOut){i=0;} } } if (e.getSource()==item4) { bc(); } if (e.getSource()==item10) { bb=new Dialog(f,"關(guān)于"); La

28、bel l1=new Label("本記事本的完成感謝老師和同學(xué)的幫助??!"); bb.add(l1); bb.setSize(250,150); bb.setBackground(Color.white); bb.show(); bb.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) {bb.setVisible(false);bb.dispose();} }); } if (e.getSource()==item6) { p1

29、.setSelectionStart(0); p1.setSelectionEnd(p1.getText().length()); } if (e.getSource()==item7) { try{ String str=p1.getSelectedText(); if(str.length()!=0) { strt=str; } }catch(Exception ex) { } } if (e.getSource()==item8) { try{ String str=p1.getSelectedText();

30、 if(str.length()!=0) { p1.replaceRange("",p1.getSelectionStart(),p1.getSelectionEnd()); } } catch(Exception ex) { } } if (e.getSource()==item9) { if(strt.length()>0) { p1.insert(strt,p1.getCaretPosition()); } } } public void bc() { fd=new FileDialog(f,"保存文件",1);

31、fd.setVisible(true); try{ file=new File(fd.getDirectory(),fd.getFile()); f.setTitle(fd.getFile()+"--記事本"); FileWriter fw=new FileWriter(file); BufferedWriter bw=new BufferedWriter(fw); String s =p1.getText(); s = s.replaceAll("\n","\r\n"); bw.write(s); bw.flush(); bw.close(); fw.close(); i=1; } catch(IOException expOut){} } } public class keshe { public static void main(String args[]) {jsb dd=new jsb("我的記事本");} } 第 19 頁(yè)

展開閱讀全文
溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
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ì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!