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

下載本文檔

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

文檔簡(jiǎn)介

1、<p>  《C#語(yǔ)言程序設(shè)計(jì)》</p><p><b>  課程設(shè)計(jì)報(bào)告</b></p><p>  題 目 簡(jiǎn)單記事本的設(shè)計(jì) </p><p>  院、系(部) 計(jì)算機(jī)學(xué)院網(wǎng)絡(luò)工程系 </p><p>  專(zhuān)業(yè)及班級(jí)

2、 </p><p>  姓 名 </p><p>  學(xué) 號(hào) </p><p>  日 期 </p><p><b>  1 題

3、目要求</b></p><p>  使用C#語(yǔ)言設(shè)計(jì)一個(gè)Windows自帶記事本,實(shí)現(xiàn)記事本軟件的基本功能,具有文本文件的新建、打開(kāi)、保存功能,文字的全選、剪切、復(fù)制、粘貼、刪除、撤銷(xiāo)、查找、替換功能,字體類(lèi)型、格式的設(shè)置、顯示當(dāng)前日期與時(shí)間的功能,并在此記事本程序基礎(chǔ)上增加設(shè)置字體顏色,添加狀態(tài)欄功能。軟件界面美觀大方,操作簡(jiǎn)潔易用,功能完備可靠,必須上機(jī)調(diào)試通過(guò)。程序中應(yīng)有不少于100~300行的

4、自行編寫(xiě)的代碼,代碼需書(shū)寫(xiě)詳細(xì)注釋。</p><p><b>  2 功能需求</b></p><p>  1.文件操作:包括文件的新建、打開(kāi)、保存、另存為、打印及退出。</p><p>  通過(guò)主窗體文件菜單中的新建、打開(kāi)、保存及退出菜單項(xiàng)實(shí)現(xiàn)上述功能。執(zhí)行操作前,應(yīng)檢查當(dāng)前文本框中內(nèi)容是否已經(jīng)保存,若還沒(méi)有保存,彈出消息提示存盤(pán)。</

5、p><p>  2.編輯功能:包括剪切、復(fù)制、粘貼、刪除、全選、插入時(shí)間和日期、自動(dòng)換行。</p><p>  上述功能通過(guò)主窗體編輯菜單中的剪切、復(fù)制、粘貼、刪除、全選、插入時(shí)間和日期、工具欄、自動(dòng)換行等菜單項(xiàng)來(lái)實(shí)現(xiàn)。其中,剪切、復(fù)制、粘貼、刪除等操作是利用剪貼板對(duì)象來(lái)完成的,沒(méi)有選中文本時(shí),剪切和復(fù)制命令不可用;同樣若剪貼板中沒(méi)有內(nèi)容時(shí),粘貼命令也應(yīng)不可用。插入時(shí)間和日期菜單項(xiàng)是將系統(tǒng)的時(shí)

6、間和日期插入到光標(biāo)所在的位置。選中自動(dòng)換行菜單項(xiàng)將使文本框具有自動(dòng)換行功能。另外,可以點(diǎn)擊日期、時(shí)間,可以查看當(dāng)前日期、時(shí)間。當(dāng)文檔的一行輸滿以后,可以自動(dòng)換行。</p><p>  主窗體字體菜單中包含字體、字體顏色及字體大小菜單項(xiàng)。以方便字體、字號(hào)的選擇以及粗體、斜體、下劃線的設(shè)置,可以實(shí)現(xiàn)字體的編輯與設(shè)計(jì)。</p><p><b>  4.查找替換功能</b>&

7、lt;/p><p>  主窗體查找菜單中包含查找、替換菜單項(xiàng)。單擊該菜單項(xiàng)彈出查找/替換對(duì)話框完成查找替換功能。注意:查找時(shí),窗體中部分控件可以隱藏起來(lái),只顯示與查找有關(guān)的控件;而執(zhí)行替換操作時(shí),再讓它們顯示出來(lái)。</p><p><b>  3 總體設(shè)計(jì) </b></p><p><b>  4 詳細(xì)設(shè)計(jì)</b></p

8、><p>  文件(F)菜單用于完成新建(新建一個(gè)空白文檔)、打開(kāi)(打開(kāi)一個(gè)已經(jīng)存在的文檔)、保存(實(shí)現(xiàn)保存記事本的功能)、另存為(實(shí)現(xiàn)文件另存為的功能)、打?。ㄔ谖募枰蛴r(shí),可用此功能)、退出(退出記事本程序)。</p><p>  編輯(E)菜單用于完成撤銷(xiāo)(撤銷(xiāo)最近一次對(duì)文本框的編輯操作)、復(fù)制(復(fù)制選中的文本內(nèi)容)、剪切(剪切選中的文本內(nèi)容)、粘貼(粘貼剪貼板中的內(nèi)容)、全選(選中

9、多格式文本框中所有的內(nèi)容)、刪除(刪除選中的文本內(nèi)容),日期、時(shí)間(用于顯示當(dāng)前的系統(tǒng)日期、時(shí)間)。</p><p>  格式(O)菜單用于完成自動(dòng)換行(文檔一行輸滿后自動(dòng)換行)和字體的設(shè)計(jì)(設(shè)計(jì)字體的大小、顏色和類(lèi)型)。</p><p>  幫助(H)菜單用于查看文檔的信息(包括自己的班級(jí)、姓名、學(xué)號(hào))。</p><p>  具體功能實(shí)現(xiàn)如下所示:</p&g

10、t;<p>  using System;</p><p>  using System.Collections.Generic;</p><p>  using System.ComponentModel;</p><p>  using System.Data;</p><p>  using System.Drawing;

11、</p><p>  using System.Linq;</p><p>  using System.Text;</p><p>  using System.Windows.Forms;</p><p>  using System.IO;</p><p>  namespace 簡(jiǎn)單記事本</p>

12、<p><b>  {</b></p><p>  public partial class Form1 : Form</p><p><b>  {</b></p><p>  public Form1()</p><p><b>  {</b></p>

13、;<p>  InitializeComponent();</p><p><b>  }</b></p><p>  private void 查看ToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  { </b></p&g

14、t;<p><b>  }</b></p><p>  private void statusStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)</p><p><b>  {</b></p><p><b>  }&

15、lt;/b></p><p>  private void 文件FToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p><b>  }</b></p><p>  private void

16、 新建NToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  if (this.richTextBox1.Modified == true) //判斷文檔是否已經(jīng)被修改</p><p><b>  {</b>

17、;</p><p>  DialogResult r = //如果已經(jīng)改變,詢(xún)問(wèn)用戶(hù)是否對(duì)已經(jīng)打開(kāi)的文檔進(jìn)行保存,是或者取消</p><p>  MessageBox.Show("文件 “" + this.Text + "” 的內(nèi)容已經(jīng)修改。\n是否要保存?", "記事本", MessageBoxButtons.YesNo

18、Cancel, MessageBoxIcon.Exclamation);</p><p>  if (r == DialogResult.Yes) //如果用戶(hù)要保存,則另存為文檔</p><p><b>  {</b></p><p>  另存為L(zhǎng)ToolStripMenuItem_Click(sender, e);</p&g

19、t;<p>  this.richTextBox1.Clear();</p><p>  this.Text = "";</p><p><b>  }</b></p><p>  else if (r == DialogResult.No) //如果用戶(hù)不要求保存,則新建文檔</p><

20、p><b>  {</b></p><p>  this.richTextBox1.Clear();</p><p>  this.Text = "";</p><p><b>  }</b></p><p><b>  else</b></p&

21、gt;<p><b>  return;</b></p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  this.richTextBox1.Clear

22、();</p><p><b>  }</b></p><p><b>  }</b></p><p>  private void 打開(kāi)ToolStripMenuItem_Click(object sender, EventArgs e) //打開(kāi)文檔</p><p><b>  

23、{</b></p><p>  richTextBox1.Clear();</p><p>  OpenFileDialog a = new OpenFileDialog(); </p><p>  a.Title = "打開(kāi)";</p><p>  a.Filter = "文本文件(*.

24、txt)|*.txt|所有文件|*.*"; </p><p>  a.RestoreDirectory = true; </p><p>  a.ShowDialog();</p><p>  StreamReader sr = new StreamReader(a.FileName);</p><p>  ric

25、hTextBox1.Text = sr.ReadToEnd();</p><p>  sr.Close(); </p><p><b>  }</b></p><p>  private void 保存SToolStripMenuItem_Click(object sender, EventArgs e)</p><p&

26、gt;<b>  {</b></p><p>  SaveFileDialog a = new SaveFileDialog();</p><p>  a.Title = "保存";</p><p>  a.Filter = "文本文件(*.txt)|*.txt|所有文件|*.*";</p>

27、<p>  a.ShowDialog();</p><p>  StreamWriter sr = new StreamWriter(a.FileName, true);</p><p>  sr.Write(richTextBox1.Text);</p><p>  sr.Close(); </p><p><b> 

28、 }</b></p><p>  private void 另存為L(zhǎng)ToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  SaveFileDialog a = new SaveFileDialog();</p>

29、<p>  a.Title = "另存為";</p><p>  a.Filter = "文本文件(*.txt)|*.txt|所有文件|*.*";</p><p>  a.ShowDialog();</p><p>  StreamWriter sr = new StreamWriter(a.FileName, t

30、rue);</p><p>  sr.Write(richTextBox1.Text);</p><p>  sr.Close(); </p><p><b>  }</b></p><p>  private void 打印PToolStripMenuItem_Click(object sender, EventArg

31、s e)</p><p><b>  {</b></p><p>  System.Drawing.Printing.PrintDocument printDocument = new System.Drawing.Printing.PrintDocument();</p><p>  if (printDialog1.ShowDialog()

32、 != DialogResult.Cancel)</p><p><b>  {</b></p><p><b>  try</b></p><p><b>  {</b></p><p>  this.printDocument1.Print();</p>&l

33、t;p><b>  }</b></p><p>  catch (Exception ex)</p><p><b>  {</b></p><p>  MessageBox.Show(ex.Message);</p><p><b>  }</b></p>

34、<p><b>  }</b></p><p><b>  }</b></p><p>  private void 退出EToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p>

35、<p>  Application.Exit();</p><p><b>  }</b></p><p>  private void 編輯EToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p>&l

36、t;p><b>  }</b></p><p>  private void 撤銷(xiāo)UToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  if (richTextBox1.CanUndo == true)&l

37、t;/p><p><b>  {</b></p><p>  richTextBox1.Undo();</p><p><b>  }</b></p><p><b>  }</b></p><p>  private void 剪切ToolStripMen

38、uItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  if (richTextBox1.SelectionLength > 0)</p><p><b>  {</b></p><p>  Clipboard

39、.SetDataObject(this.richTextBox1.SelectedText);</p><p>  粘貼PToolStripMenuItem.Enabled = true;</p><p>  this.richTextBox1.SelectedText = "";</p><p><b>  }</b>&l

40、t;/p><p><b>  }</b></p><p>  private void 復(fù)制CToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  if (richTextBox1.Select

41、ionLength > 0)</p><p><b>  {</b></p><p>  Clipboard.SetDataObject(this.richTextBox1.SelectedText);</p><p>  粘貼PToolStripMenuItem.Enabled = true;</p><p>&

42、lt;b>  }</b></p><p><b>  }</b></p><p>  private void 粘貼PToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  

43、IDataObject obj = Clipboard.GetDataObject();</p><p>  this.richTextBox1.Text += (obj.GetData(DataFormats.Text)).ToString();</p><p><b>  }</b></p><p>  private void 刪除LTo

44、olStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  if (richTextBox1.SelectionLength > 0) //判斷選中的行數(shù)是否大于0</p><p><b>  {</b><

45、/p><p>  Clipboard.SetDataObject(this.richTextBox1.SelectedText); //如果大于0就進(jìn)行刪除</p><p>  richTextBox1.Cut();</p><p><b>  }</b></p><p><b>  }</b>&

46、lt;/p><p>  private void 查找ToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  查找 f = new 查找();</p><p>  f.rtb = this.richTextBox1;

47、 //傳值(從主窗口傳到FindForm)</p><p>  f.Owner = this; //懸浮于當(dāng)前窗體</p><p><b>  f.Show();</b></p><p><b>  }</b></p><p>  private void 替換Tool

48、StripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  替換 f = new 替換();</p><p>  f.rtb = this.richTextBox1; //傳值</p><p>  f.Owne

49、r = this; //懸浮于當(dāng)前窗體</p><p><b>  f.Show();</b></p><p><b>  }</b></p><p>  private void 全選AToolStripMenuItem_Click(object sender, EventArgs e)</

50、p><p><b>  {</b></p><p>  richTextBox1.SelectAll(); //全部選中文檔里面的文檔</p><p><b>  }</b></p><p>  private void 時(shí)間日期DToolStripMenuItem_Click(object

51、sender, EventArgs e)</p><p><b>  {</b></p><p>  DateTime s = DateTime.Now; //把當(dāng)前時(shí)間賦予S</p><p>  string a = s.ToString(); //進(jìn)行類(lèi)型轉(zhuǎn)換</p><p>  richTe

52、xtBox1.Text += a; //顯示當(dāng)前時(shí)間</p><p><b>  }</b></p><p>  private void 格式OToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p>

53、<p><b>  }</b></p><p>  private void 自動(dòng)換行WToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  if ( 自動(dòng)換行WToolStripMenuItem.Che

54、cked==true)//如果選中了自動(dòng)換行</p><p><b>  {</b></p><p>  richTextBox1 .WordWrap=true ;//文本就可以換行</p><p><b>  }</b></p><p><b>  else</b></

55、p><p>  { richTextBox1.WordWrap=false ;//文本不可以換行</p><p><b>  }</b></p><p><b>  }</b></p><p>  private void 字體FToolStripMenuItem_Click(object sende

56、r, EventArgs e)</p><p><b>  {</b></p><p>  FontDialog a = new FontDialog();</p><p>  a.ShowColor = true;</p><p>  a.ShowDialog();</p><p>  rich

57、TextBox1.Font = a.Font; //選中文字的字體</p><p>  richTextBox1.SelectionColor = a.Color; //選中文字的顏色</p><p><b>  }</b></p><p>  private void 狀態(tài)欄SToolStripMenuItem_Click(obj

58、ect sender, EventArgs e)</p><p><b>  {</b></p><p><b>  }</b></p><p>  private void 幫助HToolStripMenuItem_Click(object sender, EventArgs e)</p><p>

59、;<b>  {</b></p><p><b>  }</b></p><p>  private void 關(guān)于記事本GToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p&

60、gt;  MessageBox.Show(" 計(jì)網(wǎng)1002班 張婷 1008040210");</p><p><b>  }</b></p><p>  private void richTextBox1_KeyUp(object sender, KeyEventArgs e)</p><p><b>  

61、{</b></p><p><b>  }</b></p><p>  private void richTextBox1_MouseUp(object sender, MouseEventArgs e)</p><p><b>  {</b></p><p><b>  }&

62、lt;/b></p><p>  private void richTextBox1_TextChanged(object sender, EventArgs e)</p><p><b>  {</b></p><p><b>  }</b></p><p><b>  }<

63、/b></p><p><b>  }</b></p><p><b>  5 測(cè)試與實(shí)現(xiàn)</b></p><p>  經(jīng)過(guò)調(diào)試,發(fā)現(xiàn)自己所寫(xiě)的代碼有一些問(wèn)題,比如:查找和替換功能不好做,經(jīng)常會(huì)出現(xiàn)問(wèn)題,有些是不小心將代碼或者符號(hào)寫(xiě)錯(cuò),導(dǎo)致一些問(wèn)題。還有打印功能,之前寫(xiě)代碼的時(shí)候會(huì)出現(xiàn)問(wèn)題,最后增加了printDoc

64、ument和PrintDialog控件,最后終于調(diào)試成功了。</p><p>  文件菜單及其子菜單:</p><p>  編輯菜單欄及其子菜單:</p><p>  查看菜單以及子菜單:</p><p><b>  6 總結(jié)</b></p><p>  我們這次的課程設(shè)計(jì)有點(diǎn)短,記事本的設(shè)計(jì)、代

65、碼的編寫(xiě)和相關(guān)資料的收集,讓我學(xué)到了很多有用的知識(shí),也積累了不少的經(jīng)驗(yàn)。 在實(shí)訓(xùn)中碰到了一些問(wèn)題,如代碼的編寫(xiě),點(diǎn)擊事件的觸發(fā)條件分辨不出來(lái),還有編碼的時(shí)候遇到了一些問(wèn)題讓我的程序沒(méi)有更好的實(shí)現(xiàn),最后通過(guò)自己和同學(xué)討論、查找相關(guān)資料我終于知道錯(cuò)誤的地方,并且解決了問(wèn)題。 </p><p>  總之覺(jué)得自己所編寫(xiě)的代碼還不是很完善,就像查找和替換功能還不是很完善,達(dá)不到預(yù)期的效果,還有保存功能考慮的還不是很周全,保

66、存的時(shí)候要考慮所打開(kāi)的文檔是否已經(jīng)修改過(guò),如果修改過(guò)保存或者另存為,如果沒(méi)有修改過(guò)則不需要重復(fù)保存。在設(shè)計(jì)的時(shí)候,首先我們?cè)O(shè)計(jì)窗體,然后點(diǎn)擊事件,編寫(xiě)代碼實(shí)現(xiàn)記事本的功能。</p><p>  在本次的課程設(shè)計(jì)的過(guò)程中,我遇到了許多意想不到的問(wèn)題,之前,我對(duì)自己還是沒(méi)有信心,我不知道自己能不能做好,在自己動(dòng)手實(shí)踐的過(guò)程中,發(fā)現(xiàn)其實(shí)并不是自己想象的那樣難,只要肯思考,就能做好,所以在以后的學(xué)習(xí)、工作中,要注意實(shí)踐和

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論