zoukankan      html  css  js  c++  java
  • 【C#】上机实验八

    1. 设计一个窗体应用程序,模拟写字板应用程序的基本功能。具体功能要求如下:

    (1)“文件”菜单中有“新建”、“打开”、“保存”、“退出”子菜单。

    (2)“编辑”菜单中有“剪切”、“复制”、“粘贴”、“撤销”、“重复”、“全选”子菜单。

    (3)工具菜单中有“颜色”、“字体”、“状态栏”功能。

    (4)帮助菜单中有“关于”菜单功能。

    (5)实现“编辑”菜单中、“工具”栏目中“剪切”、“复制”、“粘贴”、“撤销”、“重复”、“全选”的功能。

    (6)实现文件的新建、打开、保存功能。(利用RichTextBox控件)

    (7)文件菜单添加打开文本文件、保存文本文件菜单项,实现文件的打开、保存功能。(利用文件读写类)

    提示:

    1)添加菜单栏、工具栏、RichTextBox控件。

    2)在打开对话框中要想只显示文本文档,可以在通用对话框Filter属性中设置*.txt类别。richTextBoxLoadFileSaveFile方法中要指定文件流为RichTextBoxStreamType.PlainText

    3)点击菜单和工具栏相关按钮都实现同一个功能,所以会调用同一个方法。设计一系列公有方法实现相关功能。建议完成一个方法,就运行测试一个方法,问题解决后再编写下一个方法,避免出现太多错误。

     

      1 using System;
      2 using System.Collections.Generic;
      3 using System.ComponentModel;
      4 using System.Data;
      5 using System.Drawing;
      6 using System.Linq;
      7 using System.Text;
      8 using System.Windows.Forms;
      9 
     10 namespace MyNote
     11 {
     12     public partial class Form1 : Form
     13     {
     14         public Form1()
     15         {
     16             InitializeComponent();
     17             this.toolStripStatusLabel1.Text = "Welcome To My Note";
     18             this.toolStripStatusLabel2.Text = DateTime.Now.ToString();
     19             
     20         }
     21 
     22         #region 自定义方法
     23         
     24         public void TextCopy()
     25         {
     26             this.richTextBox1.Copy();
     27         }
     28 
     29         public void TextCut()
     30         {
     31             this.richTextBox1.Cut();
     32         }
     33 
     34         public void TextPaste()
     35         {
     36             this.richTextBox1.Paste();
     37         }
     38 
     39         public void TextUndo()
     40         {
     41             this.richTextBox1.Undo();
     42         }
     43 
     44         public void TextRedo()
     45         {
     46             this.richTextBox1.Redo();
     47         }
     48 
     49         public void TextSelectAll()
     50         {
     51             this.richTextBox1.SelectAll();
     52         }
     53 
     54         public void FileOpenMethod()
     55         {
     56             OpenFileDialog dia = new OpenFileDialog();
     57             dia.Filter = "文本文件(*.txt)|*.txt|所有文件|*.*";
     58 
     59             //dia.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
     60             if (dia.ShowDialog() == DialogResult.OK)
     61             {
     62                 this.richTextBox1.LoadFile(dia.FileName, RichTextBoxStreamType.PlainText);
     63                 this.toolStripStatusLabel1.Text = dia.SafeFileName;
     64                 this.toolStripStatusLabel2.Text = DateTime.Now.ToString();
     65             }
     66         }
     67 
     68         public void FileSaveMethod()
     69         {
     70             SaveFileDialog dia = new SaveFileDialog();
     71             dia.Filter = "文本文件(*.txt)|*.txt|所有文件|*.*";
     72 
     73             //dia.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
     74             if (dia.ShowDialog() == DialogResult.OK)
     75             {
     76                 this.richTextBox1.SaveFile(dia.FileName, RichTextBoxStreamType.PlainText);
     77             }
     78         }
     79 
     80         public void About() 
     81         {
     82             AboutBox1 dia = new AboutBox1();
     83             dia.ShowDialog();
     84         }
     85         #endregion
     86 
     87 
     88         #region 菜单栏方法
     89         private void 新建ToolStripMenuItem_Click(object sender, EventArgs e)
     90         {
     91             this.toolStripStatusLabel1.Text = "New blank Page";
     92             this.toolStripStatusLabel2.Text = DateTime.Now.ToString();
     93             this.richTextBox1.Text = "";
     94         }
     95 
     96         private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
     97         {
     98             FileOpenMethod();
     99         }
    100 
    101         private void 保存ToolStripMenuItem_Click(object sender, EventArgs e)
    102         {
    103             FileSaveMethod();
    104         }
    105 
    106         private void 剪切ToolStripMenuItem_Click(object sender, EventArgs e)
    107         {
    108             TextCut();
    109         }
    110         private void 复制ToolStripMenuItem_Click(object sender, EventArgs e)
    111         {
    112             TextCopy();
    113         }
    114 
    115         private void 粘贴ToolStripMenuItem_Click(object sender, EventArgs e)
    116         {
    117             TextPaste();
    118         }
    119 
    120         private void 撤销ToolStripMenuItem_Click(object sender, EventArgs e)
    121         {
    122             TextUndo();
    123         }
    124 
    125         private void 重复ToolStripMenuItem_Click(object sender, EventArgs e)
    126         {
    127             TextRedo();
    128         }
    129         private void 全选ToolStripMenuItem_Click(object sender, EventArgs e)
    130         {
    131             TextSelectAll();
    132         }
    133 
    134         private void 颜色ToolStripMenuItem_Click(object sender, EventArgs e)
    135         {
    136             ColorDialog dia = new ColorDialog();
    137             dia.Color = this.richTextBox1.SelectionColor;
    138             if (dia.ShowDialog() == DialogResult.OK)
    139             {
    140                 this.richTextBox1.SelectionColor = dia.Color;
    141             }
    142         }
    143 
    144         private void 字体ToolStripMenuItem_Click(object sender, EventArgs e)
    145         {
    146             FontDialog dia = new FontDialog();
    147             dia.Font = this.richTextBox1.SelectionFont;
    148             dia.Color = this.richTextBox1.SelectionColor;
    149             dia.ShowColor = true;
    150             if (dia.ShowDialog() == DialogResult.OK)
    151             {
    152                 this.richTextBox1.SelectionFont = dia.Font;
    153                 this.richTextBox1.SelectionColor = dia.Color;
    154             }
    155         }
    156 
    157         private void 状态框ToolStripMenuItem_Click(object sender, EventArgs e)
    158         {
    159             this.statusStrip1.Visible = !this.statusStrip1.Visible;
    160             状态框ToolStripMenuItem.Checked = this.statusStrip1.Visible;
    161         }
    162 
    163         private void 关于ToolStripMenuItem_Click(object sender, EventArgs e)
    164         {
    165             About();
    166         }
    167 
    168         private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
    169         {
    170             Application.Exit();
    171         }
    172 
    173         #endregion
    174 
    175 
    176 
    177         #region 工具栏方法
    178 
    179         //新建按键
    180         private void toolStripButton1_Click(object sender, EventArgs e)
    181         {
    182             this.toolStripStatusLabel1.Text = "New blank Page";
    183             this.toolStripStatusLabel2.Text = DateTime.Now.ToString();
    184             this.richTextBox1.Text = "";
    185         }
    186 
    187         //打开按键
    188         private void toolStripButton2_Click(object sender, EventArgs e)
    189         {
    190             FileOpenMethod();
    191         }
    192 
    193         //保存按键 
    194         private void toolStripButton3_Click(object sender, EventArgs e)
    195         {
    196             FileSaveMethod();
    197         }
    198 
    199         //复制按钮
    200         private void toolStripButton4_Click(object sender, EventArgs e)
    201         {
    202             TextCopy();
    203         }
    204 
    205         //剪切按钮
    206         private void toolStripButton5_Click(object sender, EventArgs e)
    207         {
    208             TextCut();
    209         }
    210 
    211         //粘贴按钮
    212         private void toolStripButton6_Click(object sender, EventArgs e)
    213         {
    214             TextPaste();
    215         }
    216         
    217         //撤销按钮 
    218         private void toolStripButton7_Click(object sender, EventArgs e)
    219         {
    220             TextUndo();
    221         }
    222         
    223         //重复按钮 
    224         private void toolStripButton8_Click(object sender, EventArgs e)
    225         {
    226             TextRedo();
    227         }
    228 
    229         private void toolStripButton9_Click(object sender, EventArgs e)
    230         {
    231             About();
    232         }
    233         #endregion
    234     }
    235 }
    MyNote
  • 相关阅读:
    ios 将Log日志重定向输出到文件中保存
    IOS中GPS定位偏移纠正(适用于Google地图)
    java与IOS之间的RSA加解密
    [iPhone高级] 基于XMPP的IOS聊天客户端程序(IOS端一)
    [IOS] Storyboard全解析-第一部分
    NTP时间同步
    Prthon多线程和模块
    Python循环语句,对象
    Python起步学习
    Nginx实战之反向代理WebSocket的配置实例
  • 原文地址:https://www.cnblogs.com/Osea/p/11868030.html
Copyright © 2011-2022 走看看