用C#语言实现记事本


前言

记事本是一种常用的软件,在微软的Windows中,自带了一个记事本软件,如图所示。
在这里插入图片描述
下述设计的记事本,实现了Windows自带的记事本的部分功能外,并且还可以任意更改字体的字体类型、大小和颜色,并在状态栏中显示时间。为了方便用户的操作,还在程序的窗体上放置了一个工具栏。该记事本程序具有文件的新建、打开、保存功能;文字的复制、粘贴、删除功能;字体类型、格式的设置功能;查看日期时间等功能,并且用户可以根据需要显示或者隐藏工具栏和状态栏。


一、用户界面设计

新建一个Windows窗体应用程序,依次添加MenuStrip(菜单控件)、ToolStrip(工具栏控件)、RichTextBox(多格式文本框控件)、StatusStrip(状态栏控件)、OpenFileDialog(打开对话框)、SaveFileDialog(保存对话框)、FontDialog(字体对话框),Timer(计时器控件),并修改相应控件的属性。
在这里插入图片描述
最终界面
在这里插入图片描述

二、编写程序代码

1.RichTextBox(多格式文本框控件)

代码如下(示例):

private void rtxtNotepad_TextChanged(object sender, EventArgs e)
        {
   
            // 文本被修改后,设置s为false,表示文件未保存
            s = false;
        }

2.菜单

代码如下(示例):

【文件】菜单
新建
private void tsmiNew_Click(object sender, EventArgs e)
        {
   
            // 判断当前文件是否从磁盘打开,或者新建时文档不为空,并且文件未被保存
            if (b == true || rtxtNotepad.Text.Trim() != "")
            {
   
                // 若文件未保存
                if (s == false)
                {
   
                    string result;
                    result = MessageBox.Show("文件尚未保存,是否保存?",
                        "保存文件", MessageBoxButtons.YesNoCancel).ToString();
                    switch (result)
                    {
   
                        case "Yes":
                            // 若文件是从磁盘打开的
                            if (b == true)
                            {
   
                                // 按文件打开的路径保存文件
                                rtxtNotepad.SaveFile(odlgNotepad.FileName);
                            }
                            // 若文件不是从磁盘打开的
                            else if (sdlgNotepad.ShowDialog() == DialogResult.OK)
                            {
   
                                rtxtNotepad.SaveFile(sdlgNotepad.FileName);
                            }
                            s = true;
                            rtxtNotepad.Text = "";
                            break;
                        case "No":
                            b = false;
                            rtxtNotepad.Text = "";
                            break;
                    }
                }
            }
        }
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值