2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  java課程設(shè)計(jì)</b></p><p>  課程設(shè)計(jì)題目: 文本編輯器 </p><p><b>  目錄</b></p><p>  一、問題描述———————————————————2</p><p>  二、功能模塊設(shè)計(jì)—————————————————2<

2、;/p><p>  三、主要流程設(shè)計(jì)—————————————————3</p><p>  四、用戶界面設(shè)計(jì)及部分運(yùn)行結(jié)果測試————————4</p><p>  五、主要類設(shè)計(jì)——————————————————6</p><p>  六、系統(tǒng)創(chuàng)新點(diǎn)——————————————————8</p><p>  七、參考

3、文獻(xiàn)———————————————————8</p><p>  八、心得體會———————————————————8</p><p><b>  問題描述:</b></p><p><b>  文本編輯器:</b></p><p><b>  功能要求:</b></p&

4、gt;<p>  文檔操作:主要是在txt文檔中輸入文字信息。</p><p>  .文件操作:包括文件的新建、打開、關(guān)閉、保存、另存為及退出程序等功能。</p><p>  文件編輯:包括撤銷上一步操作、剪切、復(fù)制、粘貼、刪除、全選、查找、查找下一個(gè)、替換等功能。 </p><p>  插入功能:主要是為了方便使用者插入日期、時(shí)間等信息(可選做功能)

5、</p><p>  字體設(shè)置:可以通過[字體]菜單對編輯器的顯示字體進(jìn)行設(shè)定,字體設(shè)定應(yīng)能設(shè)置字體的顏色。字體的不需要保存到文件,即字體設(shè)置只在當(dāng)前編輯時(shí)有效,退出程序并再次運(yùn)行時(shí)不需要與上次的字體相同 (可選擇功能)</p><p><b>  功能模塊設(shè)計(jì)</b></p><p>  該文本編輯器主要實(shí)現(xiàn)的功能有:</p>

6、<p><b>  文本輸入;</b></p><p>  文件菜單:新建、打開、關(guān)閉、保存、另存為、退出;</p><p>  編輯菜單:撤銷、剪切、復(fù)制、粘貼、刪除、全選、插入時(shí)間、查找、查找下一個(gè)、替換;</p><p><b>  格式菜單:自動換行</b></p><p><

7、;b>  主要流程設(shè)計(jì)</b></p><p><b>  1)簡單框架的建立</b></p><p>  第一步:建立框架——利用所建MainForm主類直接繼承JFrame,這個(gè)框架類包含了一個(gè)initComponents() 方法,用于初始化各個(gè)組件,同時(shí)在initComponents() 方法里利用setTitle方法為框架添加了標(biāo)題——“T

8、XT”。</p><p>  第二步:添加文本域——用TextArea建立一個(gè)文本域?qū)ο?,并添加進(jìn)框架里</p><p><b>  2)添加菜單</b></p><p>  該文本編輯器菜單組件如下:</p><p>  “文件”菜單: “編輯”菜單: “格式”菜單:</p><

9、p><b>  圖 3-2</b></p><p>  用JMenuBar定義一個(gè)菜單欄、 JMenu定義“文件”,“編輯”菜單、JMenuItem定義“新建”,“打開”,“復(fù)制”,“粘貼”等菜單項(xiàng),更改變量名,并在initComponents( )方法里創(chuàng)建這些選項(xiàng)對象。利用addActionListener方法添加菜單響應(yīng)事件,將每個(gè)菜單項(xiàng)關(guān)聯(lián)到各自獨(dú)立的事件監(jiān)聽器。</p&

10、gt;<p>  3)編寫事件相應(yīng)代碼</p><p>  根據(jù)所要實(shí)現(xiàn)的功能編寫各菜單選項(xiàng)的事件代碼。</p><p>  4)創(chuàng)建FindDialog類和ReplaceDialog類</p><p>  由于“查找”“替換”功能需要彈出對話框,我們就要各自創(chuàng)建一個(gè)Frame框架,新建FindDialog類和ReplaceDialog類并關(guān)聯(lián)相應(yīng)按鈕

11、到MainForm中。</p><p>  用戶界面設(shè)計(jì)及部分運(yùn)行結(jié)果測試</p><p>  該文本編輯器主要使用java.Swing工具包進(jìn)行界面設(shè)計(jì)——</p><p><b>  1)菜單項(xiàng)界面:</b></p><p><b>  如圖3-2。</b></p><p&g

12、t;<b>  2)打開文件界面:</b></p><p><b>  圖 4-2</b></p><p><b>  3)查找界面:</b></p><p><b>  圖 4-3</b></p><p><b>  4)查找結(jié)果:</b

13、></p><p><b>  圖 4-4</b></p><p><b>  查找下一個(gè):</b></p><p><b>  圖 4-5</b></p><p>  6)保存、另存為界面:</p><p><b>  圖 4-6<

14、;/b></p><p><b>  7)替換界面:</b></p><p><b>  圖 4-7</b></p><p><b>  8)替換結(jié)果:</b></p><p><b>  圖 4-8</b></p><p>

15、<b>  主要類設(shè)計(jì)</b></p><p>  1)MianForm類:</p><p>  用于整體功能的實(shí)現(xiàn),包括各項(xiàng)功能的初始化及各事件的監(jiān)聽響應(yīng)等。關(guān)鍵代碼如下:</p><p>  public class MainForm extends javax.swing.JFrame {</p><p>  pr

16、ivate String text, new_text;</p><p>  private String selectText = "";//存放文本編輯區(qū)中選中的文本內(nèi)容</p><p>  private boolean text_judgement = false;</p><p>  private FindDialog dialog

17、= new FindDialog(this, true);//查找對話框</p><p>  private char[] main, sub;//主、子串字符數(shù)組</p><p>  private String subString;//被查找的子串</p><p>  int count = 0;//記錄查找到的子串的個(gè)數(shù)</p><p>

18、;  private int[] add = new int[10];</p><p>  //記錄下每次在文本中查找到子串的起始位置</p><p>  private ReplaceDialog dialog2 = new ReplaceDialog(this, true);</p><p><b>  //替換對話框</b></p&

19、gt;<p>  private int pos1, pos2;//文本選定的字符串的起始位置和結(jié)束位置</p><p>  private String replaceStr;//用來替換的子串</p><p>  private String oldReplaceStr;//記錄被替換的字符</p><p>  /** Creates new fo

20、rm MainForm */</p><p>  public MainForm() {</p><p>  initComponents();</p><p>  setTitle("TXT");</p><p><b>  }</b></p><p><b>  

21、}</b></p><p><b>  自動換行功能:</b></p><p>  private void menuWrapLineActionPerformed(java.awt.event.ActionEvent evt) {</p><p>  boolean var = false;</p><p>

22、;<b>  if (var)</b></p><p>  var = true;</p><p><b>  else</b></p><p>  var = false;</p><p>  displayText.setLineWrap(var); </p><p>&

23、lt;b>  }</b></p><p><b>  插入時(shí)間功能:</b></p><p>  private void menuDateActionPerformed(java.awt.event.ActionEvent evt) {</p><p>  String date = displayText.getText(

24、);</p><p>  Calendar c = Calendar.getInstance(Locale.CHINA);</p><p>  String year = Integer.toString(c.get(Calendar.YEAR));</p><p>  String month = Integer.toString(c.get(Calendar.M

25、ONTH) + 1);</p><p>  String day = Integer.toString(c.get(Calendar.DATE));</p><p>  String hour = Integer.toString(c.get(Calendar.HOUR_OF_DAY));</p><p>  String minute = Integer.toSt

26、ring(c.get(Calendar.MINUTE));</p><p>  String second = Integer.toString(c.get(Calendar.SECOND));</p><p>  date = date + " " + year + " - " + month + " - " + day +

27、 " " + hour + " : " + minute + " : " + second;</p><p>  displayText.setText(date+'\n');</p><p><b>  }</b></p><p>  2)FindDialog類:

28、</p><p>  private void findNextActionPerformed(java.awt.event.ActionEvent evt) {</p><p>  String f = findText.getText();</p><p>  MainForm parent = (MainForm) this.getParent();</

29、p><p>  parent.getString(f);</p><p>  this.dispose();</p><p><b>  }</b></p><p>  3)ReplaceDialog類:</p><p>  private void replaceItActionPerformed(

30、java.awt.event.ActionEvent evt) {</p><p>  String r=replaceText.getText();</p><p>  MainForm parent = (MainForm) this.getParent();</p><p>  parent.getReplace(r);</p><p>

31、;  replaceText.setText("");</p><p>  this.dispose();</p><p><b>  }</b></p><p><b>  六、系統(tǒng)創(chuàng)新點(diǎn)</b></p><p>  1)除了選做了“插入時(shí)間”功能外,還新增了“自動換行”功能,

32、便于閱讀編輯;</p><p>  2)創(chuàng)建了selectText用于進(jìn)行復(fù)制、剪切操作時(shí)存放文本編輯區(qū)中選中的文本內(nèi)容,并可在進(jìn)行粘貼操作時(shí)寫入文本編輯區(qū)。</p><p><b>  七、參考文獻(xiàn)</b></p><p>  《java語言程序設(shè)計(jì)》</p><p><b>  八、心得體會</b&g

33、t;</p><p>  由于自身的基本功不扎實(shí),雖然這與其他人的課題比起來是個(gè)很簡單的程序了,但我在做的過程中還是遇到了很多困難,于是往往花費(fèi)數(shù)小時(shí)絞盡腦汁四處翻資料實(shí)在不行了再請教同學(xué),最后得出的很可能只是幾行程序,但就是這短短的幾行,帶給人的喜悅卻是成反比的。</p><p>  無論如何,我相信通過這次的課程設(shè)計(jì),我對JAVA這門學(xué)科的理解有了長足的進(jìn)步。在做這課題過程中的辛苦如人

溫馨提示

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

評論

0/150

提交評論