Java程序設(shè)計綜合實驗報告_第1頁
Java程序設(shè)計綜合實驗報告_第2頁
Java程序設(shè)計綜合實驗報告_第3頁
Java程序設(shè)計綜合實驗報告_第4頁
Java程序設(shè)計綜合實驗報告_第5頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

華北科技學(xué)院計算機系報告PAGE 第3頁華北科技學(xué)院計算機系軟件報告課程名稱Java程序設(shè)計A實驗學(xué)期2011至2012學(xué)年第一學(xué)期學(xué)生所在系部管理學(xué)院年級二專業(yè)班級電商B09-2學(xué)生姓名姜麗君學(xué)號200904064214任課教師王養(yǎng)廷實驗成績計算機系制

《Java程序設(shè)計A》課程考試報告開課實驗室:軟件開發(fā)實驗室2011年12月4日實驗題目簡易寫字板軟件一、實驗?zāi)康恼莆彰嫦驅(qū)ο蟪绦蛟O(shè)計基本要素(封裝、繼承、多態(tài))掌握J(rèn)AVA語言常用類包及其常用方法和JAVA語言基本語法掌握基于AWT的圖形用戶界面設(shè)計常用標(biāo)準(zhǔn)控件的使用,如標(biāo)簽、按鈕、菜單、文本框、單選按鈕、滾動條等。事件處理機制掌握布局、對話框的使用掌握發(fā)布JAVA應(yīng)用程序二、設(shè)備與環(huán)境PC兼容機、Windows操作系統(tǒng)、JAVA集成開發(fā)環(huán)境。三、實驗內(nèi)容完成留言板的需求分析。留言板的總體設(shè)計,列出主要的類和類間關(guān)系。列出具體的實現(xiàn)代碼。寫出程序的實現(xiàn)細(xì)節(jié),主要得功能界面,實現(xiàn)說明。寫出總結(jié)和評價四、實驗結(jié)果及分析1.需求分析本程序構(gòu)建的寫字板,其功能主要有以下幾個方面:菜單中有“文件”“編輯”“格式”“幫助”四個主菜單文件菜單項包括“新建”“保存”“打開”“退出”四個功能項,分別用于新建文件,保存文件,打開文件,退出寫字板。“編輯“中有“剪切”“復(fù)制”“粘貼”“撤銷”,分別用于剪切文字,復(fù)制文字,粘貼文字,撤銷文件編輯。“格式”菜單里有“字體”“顏色”兩個功能,用于字體和顏色的改變?!皫椭辈藛沃杏小瓣P(guān)于”,關(guān)于寫字板的一些詳情。、功能模板說明圖其中保存功能,當(dāng)點擊保存時,出現(xiàn)一個對話框,當(dāng)選擇保存時,繼續(xù)選擇文件夾存入,當(dāng)點擊取消時則停止保存,回到文本窗口。2.軟件設(shè)計(1)總體結(jié)構(gòu)概述:程序包括一個公共類wendang1,分別為窗口建立的類xieziban,其中所引用到了java提供的軟件包java.awt.event.*,java.awt.*,java.io.*,javax.swing.*,實現(xiàn)各個組件的功能,在窗口建立的類為各個組件添加監(jiān)聽器,并實現(xiàn)監(jiān)聽器,在類xiziban中調(diào)用方法,以實現(xiàn)監(jiān)聽器,增強代碼的可讀性。(2)軟件設(shè)計思路設(shè)計一個xieziban類,繼承自JFrame類,并且在xieziban類利用了JTextArea創(chuàng)建面板窗口bCenter,利用JScrollPane創(chuàng)建滾動條scrollpane1,利用JFileChooser創(chuàng)建文件選擇器fileChooser,利用JMenuBar創(chuàng)建并且實例化菜單欄,通過一些具體的方法實現(xiàn)各個功能鍵的功能。建立構(gòu)造函數(shù)Xieziban(Strings),通過該構(gòu)造函數(shù)實現(xiàn)寫字板程序的主要功能,運行是在主類中通過調(diào)用該構(gòu)造函數(shù)來實現(xiàn)對寫字板程序的基本操作。3.程序代碼importjava.awt.event.*;importjava.awt.*;importjava.io.*;importjavax.swing.*;publicclasswendang1{publicstaticvoidmain(Stringargs[]){ Xiezibanx=newXieziban("簡易寫字板");}}classXiezibanextendsJFrameimplementsActionListener{ Filefile=null; JScrollPanescrollpane1; JFileChooserfileChooser; JMenuItemitem3,item4,item5,item1,item2,item6,item7,item8,item9,item11,item12; JTextAreabCenter; voidsetFrame(Strings) { setTitle(s); setBounds(300,180,600,500); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } publicvoidsetMenu(){ JMenuBarjmb=newJMenuBar(); JMenumenu1=newJMenu("文件"); JMenumenu2=newJMenu("編輯"); JMenumenu3=newJMenu("格式"); JMenumenu4=newJMenu("幫助"); fileChooser=newJFileChooser("F://"); item9=newJMenuItem("新建"); item1=newJMenuItem("打開"); item2=newJMenuItem("保存"); item11=newJMenuItem("退出"); item8=newJMenuItem("撤銷"); item3=newJMenuItem("剪切"); item4=newJMenuItem("復(fù)制"); item5=newJMenuItem("粘貼"); item6=newJMenuItem("字體"); item7=newJMenuItem("顏色"); item12=newJMenuItem("關(guān)于"); item9.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_MASK)); item1.setAccelerator(KeyStroke.getKeyStroke('o')); item2.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK)); item11.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.CTRL_MASK)); item8.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Z,InputEvent.CTRL_MASK)); item3.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.CTRL_MASK)); item4.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,InputEvent.CTRL_MASK)); item5.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,InputEvent.CTRL_MASK)); menu1.add(item9); menu1.addSeparator(); menu1.add(item1); menu1.addSeparator(); menu1.add(item2); menu1.addSeparator(); menu1.add(item11); jmb.add(menu1); setJMenuBar(jmb); menu2.add(item8); menu2.addSeparator(); menu2.add(item3); menu2.addSeparator(); menu2.add(item4); menu2.addSeparator(); menu2.add(item5); jmb.add(menu2); setJMenuBar(jmb); menu3.add(item6); menu3.addSeparator(); menu3.add(item7); jmb.add(menu3); setJMenuBar(jmb); menu4.add(item12); jmb.add(menu4); }Xieziban(Strings){//構(gòu)造函數(shù)setFrame(s);//diaoyongfanfa setMenu();bCenter=newJTextArea();//chuanjianwenbenquscrollpane1=newJScrollPane(bCenter);add(scrollpane1,BorderLayout.CENTER);bCenter.setLineWrap(true);validate();item2.addActionListener(this);item3.addActionListener(this); item4.addActionListener(this); item5.addActionListener(this); item6.addActionListener(this); item7.addActionListener(this); item9.addActionListener(this); item11.addActionListener(this); item12.addActionListener(this);}publicvoidactionPerformed(ActionEvente){if(e.getSource()==item3)bCenter.cut();elseif(e.getSource()==item4)bCenter.copy();elseif(e.getSource()==item5)bCenter.paste();elseif(e.getSource()==item9)bCenter.setText(null);elseif(e.getSource()==item11) System.exit(0); elseif(e.getSource()==item2) { intn=fileChooser.showSaveDialog(this);if(n==JFileChooser.APPROVE_OPTION){Filefile=fileChooser.getSelectedFile();try{ FileWriterwritefile=newFileWriter(file); Strings=bCenter.getText(); writefile.write(s);}catch(IOExceptionee){} }}elseif(e.getSource()==item7){ ColornewColor=JColorChooser.showDialog(this,"調(diào)色板",Color.red); if(newColor!=null) bCenter.setForeground(newColor); }elseif(e.getSource()==item12){JDialogabout=newJDialog(this);//關(guān)于對話框 about.setSize(200,150); about.setVisible(true); about.add(newJLabel("版權(quán)所有,請勿模仿!!"));}}}4.程序?qū)崿F(xiàn)說明(1)設(shè)計一個主類wendang1,創(chuàng)建主函數(shù)publicclasswendang1{publicstaticvoidmain(Stringargs[]){ Xiezibanx=newXieziban("簡易寫字板");}}(2)在主接口中設(shè)計一個xieziban容器繼承自JFrame,并且在其中加入菜單欄,滾動條和文本選擇器classXiezibanextendsJFrameimplementsActionListener{ Filefile=null;//文件為空 JScrollPanescrollpane1;//滾動條 JFileChooserfileChooser;//文件選擇器 JMenuItemitem3,item4,item5,item1,item2,item6,item7,item8,item9,item11,item12;//設(shè)置菜單欄 JTextAreabCenter;//文本區(qū)實例 voidsetFrame(Strings) { setTitle(s); setBounds(300,180,600,500);//設(shè)置窗口出現(xiàn)的位置,尺寸 setVisible(true);//設(shè)置窗口可見 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//關(guān)閉窗口時退出程序 }(3)在下拉菜單中加入子菜單并且監(jiān)聽,分別實現(xiàn)對文件的操作功能,點擊不同的菜單項時,顯示不同的窗口publicvoidactionPerformed(ActionEvente){if(e.getSource()==item3)bCenter.cut();//剪切功能elseif(e.getSource()==item4)bCenter.copy();//復(fù)制功能elseif(e.getSource()==item5)bCenter.paste();//粘貼功能elseif(e.getSource()==item9)bCenter.setText(null);//新建功能elseif(e.getSource()==item11) System.exit(0);//退出功能 elseif(e.getSource()==item2) { intn=fileChooser.showSaveDialog(this);if(n==JFileChooser.APPROVE_OPTION){Filefile=fileChooser.getSelectedFile();try{ FileWriterwritefile=newFileWriter(file); Strings=bCenter.getText(); writefile.write(s);}catch(IOExceptionee){} }}//保存功能elseif(e.getSource()==item7){ C

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論