




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、word*實踐教學*蘭州理工大學計算機與通信學院 2012年秋季學期 Java課程設計題 目: 記事本程序 專業班級: 軟件基地班 姓 名: 學 號: 指導教師: 成 績: 摘 要本次課程設計的題目是用JAVA語言編寫記事本程序,要求是:用圖形界面實現;含有簡單的文字編輯功能,如:剪切、復制、粘貼、刪除;還能實現保存、另存為、查找、替換等功能。本程序主要用到了Java swing組件和事件監聽器,還用到了文件的輸入輸出流。記事本的界面參考了Windows中的記事本界面,并且根據課程設計要求做了適當的調整。分別對每個事件定義事件監聽器。然后在實現相應的方法。關鍵詞:記事本程序;Java語言;sw
2、ing組件目 錄 摘 要2序 言4 第一章 分析與設計5 第二章 詳細設計6第三章 系統測試16第四章 軟件使用說明書19設計總結20參考文獻21致 謝22序 言 Java語言是當今流行的網絡編程語言,它具有面向對象、跨平臺、分布應用等特點。面向對象的開發方法是當今世界最流行的開發方法,它不僅具有更貼近自然的語義,而且有利于軟件的維護和繼承。為了進一步穩固課堂上所學到的知識,深刻把握Java語言的重要概念及其面向對象的特性,使我們能夠熟練的應用面向對象的思想和設計方法解決實際問題的能力。通過此次課程設計,穩固所學Java語言根本知識,增進Java語言編輯根本功,掌握JDK、Eclipse等開發
3、工具的運用,拓寬常用類庫的應用。使學生通過該教學環節與手段,把所學課程及相關知識加以融會貫穿,全面掌握Java語言的編程思想及面向對象程序設計的方法,為今后從事實際工作打下堅實的根底。第一章 分析與設計一、課程設計目的設計一個具有GUI界面的記事本,含有簡單的文字編輯功能,如:剪切、復制、粘貼、刪除;還能實現保存、另存為、查找、替換等功能。二、課程設計問題設計題目:記事本程序設計思路:首先設計界面進入面板,在面板中添加菜單項選擇項,并將要實現的功能選項添加其中,然后對這些選項實施監聽,實現其功能。通過文件類型知識的應用,實現對記事本程序的管理。三、概要設計面板設計:首先設計一個容器,然后再容器
4、中添加菜單,在菜單中添加選項,并在容器中參加面板,面板布局設置為CardLayout,最后將面板添加進容器。本程序要構建的記事本程序參照了Windows操作系統的記事本工具,其功能有以下幾個方面:(1)、菜單中有“文件、“編輯、“幫助三個主菜單;(2)、“文件有“新建、“翻開、“保存、“另存為、“退出分別用于新建文件,翻開文件,保存文件,另存文件,退出記事本。(3)、“編輯中,有“剪切、“復制、“粘貼、“刪除、“查找、“替換、“全選七個子菜單:用于剪切文字,復制文字,粘貼文字,刪除文字,查找文件中的指定的字符串,替換文件中的指定的字符串,選定整個文件。(4)“幫助菜單中有“關于的子菜單,用于描
5、述記事本程序的相關信息。第二章 詳細設計1、 jishiben類的實現File file=null; /定義一個空文件private JLabel stateBar; /定義一個標簽private JTextArea text; /定義編輯區private JMenuBar mb; /定義菜單欄private JMenu files,edit,help; /定義菜單private JMenuItem Open,New,Save,SaveAs,Exit,Cut,Copy,Paste,Delete,Find,Replace,SelectAll,About; /定義菜單項2、 GUI程序界面設計fi
6、les.add(New); public jishiben() /構造函數super("記事本"); / 菜單欄 mb=new JMenuBar();/*菜單欄的各個菜單項*/files=new JMenu("文件"); edit=new JMenu("編輯");help=new JMenu("幫助");/*“幫助菜單項的下拉菜單*/About=new JMenuItem("關于記事本"); /*“文件菜單項的下拉菜單*/Open=new JMenuItem("翻開"); N
7、ew=new JMenuItem("新建");Save=new JMenuItem("保存");SaveAs=new JMenuItem("另存為");Exit=new JMenuItem("退出"); /*編輯菜單的四個下拉菜單*/Cut=new JMenuItem("剪切"); Copy=new JMenuItem("復制");Paste=new JMenuItem("粘貼");Delete=new JMenuItem("刪除");
8、Find=new JMenuItem("查找");Replace=new JMenuItem("替換");SelectAll=new JMenuItem("全選");stateBar=new JLabel("未修改"); /添加標簽stateBar.setHorizontalAlignment(SwingConstants.LEFT);stateBar.setBorder(BorderFactory.createEtchedBorder();mb.add(files); /添加控鍵mb.add(edit);mb.a
9、dd(help);files.add(Open);files.add(Save);files.add(SaveAs);files.addSeparator(); / 分隔線 files.add(Exit); edit.add(Cut);edit.add(Copy);edit.add(Paste);edit.add(Delete);edit.addSeparator(); / 分隔線 edit.add(Find);edit.add(Replace);edit.addSeparator(); / 分隔線 edit.add(SelectAll);help.add(About);setJMenuBar
10、(mb);text=new JTextArea();add(new JScrollPane(text); /滾動面板setSize(600,500); /設置窗口大小setVisible(true); /使窗口顯示3、程序流程圖1、主流程圖開始輸入文字?新建翻開保存另存為剪切復制粘貼刪除查找替換全選關于退出結束圖3.1主流程圖NY2、“文件菜單操作流程圖開始“文件菜單新建另存為File=null翻開用JFileChooser()選擇所有翻開文件路徑用unfold()讀取所選的文件內容到記事本保存用sava()保存文件用JFileChooser()選擇文件另存的路徑用sava()保存文件退出或關
11、閉文件是否修改用sava()保存文件Y結束N圖3.2 “文件菜單操作流程圖用close()關閉文件3、“編輯菜單操作流程圖開始“編輯菜單剪切全選設置修改標簽,text.cut()復制用text.copy()實現粘貼設置修改標簽,text.paste()刪除設置修改標簽,text.replaceRange("", start, end);查找替換用FindAndReplace方法實現用text.selectAll()實現退出或關閉文件是否修改用sava()保存文件并結束用close()關閉文件YN圖3.3 “編輯菜單操作流程圖4、“幫助菜單操作流程圖開始“幫助菜單關于記事本顯
12、示記事本的有關信息結束圖3.4 “幫助菜單操作流程圖4、事件處理4.1 編輯區鍵盤事件處理text.addKeyListener( new KeyAdapter()public void keyTyped(KeyEvent e)processTextArea(););4.2 窗口事件處理ClasswindowListenerextendsWindowAdapter public void windowClosing(WindowEvent e) close(); 4.3 菜單項事件處理class actionListener implements ActionListener public v
13、oid actionPerformed(ActionEvent e)JMenuItem mi=(JMenuItem) e.getSource();if(mi=New) /新建文件text.setText("");file=null;else if(mi=Exit) /退出 close(); else if(mi=Cut) /剪切 stateBar.setText("已修改"); text.cut();else if(mi=Copy) /復制 text.copy();else if(mi=Paste) /粘貼 stateBar.setText("
14、已修改"); text.paste();else if(mi=SelectAll) /全選 text.selectAll();else if(mi=Delete) /刪除stateBar.setText("已修改");int start;int end;start = text.getSelectionStart();end = text.getSelectionEnd();text.replaceRange("", start, end); else if(mi=Open) /翻開 JFileChooser jf=new JFileChoos
15、er(); /創立翻開文件對話框if(file!=null) jf.setSelectedFile(file); int returnVal=jf.showOpenDialog(jishiben.this); if(returnVal=JFileChooser.APPROVE_OPTION) file=jf.getSelectedFile(); unfold(); else if(mi=About) /關于String message = "-記事本-"+ " 感謝您的使用!"JOptionPane.showMessageDialog(jishiben.
16、this, message, "關于.",JOptionPane.PLAIN_MESSAGE);else if(mi=Save) /保存save();else if(mi=SaveAs) /另存為JFileChooser jf=new JFileChooser();if(file!=null)jf.setSelectedFile(file);int returnVal=jf.showSaveDialog(jishiben.this);if(returnVal=JFileChooser.APPROVE_OPTION)file=jf.getSelectedFile();save
17、();else if(mi=Find) /查找 FindAndReplace fr=new FindAndReplace();fr.setVisible(true);fr.setLocation(getLocation();else if(mi=Replace) /替換 FindAndReplace fr=new FindAndReplace();fr.setVisible(true);fr.setLocation(getLocation();第三章 系統測試(1)程序運行界面如下:(2)“文件菜單的菜單項:(3)“編輯菜單的菜單項:(4)翻開文件及另存文件時的界面:由于翻開文件和另存文件都要
18、尋找路徑,所以開始時界面相同。(5)翻開了某一個文本文件是的截圖:(6)使用查找替換時的截圖:在“查找內容的框內輸入查找的內容,再按“查找下一個這個按鈕就可以查找。如果要替換所查找的內容,就在“替換字串的框內輸入要替換成的內容。如圖中就是把“風水替換“風。(7)記事本關閉或退出時的截圖:當文件發生了剪切、刪除、粘貼等操作,或者在編輯區中輸入了字符,即文件進行了修改,當點擊“文件菜單中的“退出項或者點擊了窗口的關閉按鈕時,就會彈出一個“保存文件的對話框。如果文件沒有發生修改,關閉或者退出時,直接關閉了記事本程序。由于其他的操作在截圖里很難發現什么變化,所以只展示了上面的截圖。第四章 軟件使用說明
19、書本程序要構建的記事本程序參照了Windows操作系統的記事本工具,其功能有以下幾個方面:(1)、菜單中有“文件、“編輯、“幫助三個主菜單;(2)、“文件有“新建、“翻開、“保存、“另存為、“退出五個子菜單,分別用于新建文件,翻開文件,保存文件,另存文件,退出記事本。其中文件另存為時應選擇保存路徑。(3)、“編輯中,有“剪切、“復制、“粘貼、“刪除、“查找、“替換、“全選七個子菜單:用于剪切文字,復制文字,粘貼文字,刪除文字,查找文件中的指定的字符串,替換文件中的指定的字符串,選定整個文件。(4)“幫助菜單中有“關于的子菜單,用于描述記事本程序的相關信息。注:在用戶退出記事本程序時可通過“文件退出功能和直接關閉記事本對話框。當文件被修改時,將有是否保存對話框。用戶可選擇“是,“否。設計總結在經過了將近兩周的Java課程的學習之后,對于Java這門優秀的編程語言有了更深層次的認識。在學習的過程中,通過朱老師的教學指導、課外對相關知識的閱讀和上機實際操作,對于它所具有的面向對象、與平臺無關、平安、穩定和多線程等特點,有了更深刻更直觀的認識和理解。因為對相關知識理解得還不是很透徹。致使在這次課程設計的過程中,遇到了很多問題。諸如,監控的定義:是否可以在一個監控器里再次添加一個監控器。還有menubar中不可以
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 汽車變賣協議書
- 球場入股協議書
- 清理榕樹協議書
- 工地工人安全協議書
- 瓜子違約協議書
- 工程工期獎罰協議書
- 社保放棄協議書
- 愛情契約協議書
- 深井維修協議書
- 導師勞務發放協議書
- 【MOOC】心理學與生活-南京大學 中國大學慕課MOOC答案
- 華中師范大學第一附中2025屆高考沖刺押題(最后一卷)數學試卷含解析
- 《電力機車構造(第2版)》課件 任務三 HXD1型電力機車車體設備布置認知
- (完整版)北郵英語統考題庫
- 殯儀服務員職業培訓試題和答案
- 房屋買賣合同范本模版模板
- 第五課 在和睦家庭中成長 說課稿-2024-2025學年高中政治統編版選擇性必修二法律與生活
- 農業昆蟲學-形考測試一-國開(ZJ)-參考資料
- 房地產 -中建商務管理精細化管理實施細則
- 初級消防設施操作員實操題庫 (一)
- JJF 2166-2024電子固體密度天平校準規范
評論
0/150
提交評論