暑假一直在学习c# windows编程,也写了一些有意思的小程序。做了一个记事本,能够实现微软记事本的部分功能。下面分享一下记事本的制作过程。
首先是设计器,控件用到两个,一个是文本框richTextBox,一个是菜单栏menuStrip。
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyN3kDM1YTMwIDMxgDM2EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
File里包含:New(新建),Open(打开),Save(保存),Exit(退出)。
Edit里包含:Undo(撤销),Redo(恢复),Copy(复制),Paste(粘贴),Cut(剪切),Select All(选择全部),Date\Time(日期时间)。
Format里包含:Font(字体),Color(颜色)。
下面将完整的代码贴出来。
/*命名空间*/
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace NotePad
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void newToolStripMenuItem_Click(object sender, EventArgs e) //新建
{
richTextBox1.Clear();
}
private void openToolStripMenuItem_Click(object sender, EventArgs e) //打开
{
OpenFileDialog op = new OpenFileDialog();
op.Title = "open";
op.Filter = "Text DOcument(*.txt)|*.txt|All Files(*.*)|*.*";
if (op.ShowDialog() == DialogResult.OK)
richTextBox1.LoadFile(op.FileName, RichTextBoxStreamType.PlainText);
this.Text = op.FileName;
}
private void saveToolStripMenuItem_Click(object sender, EventArgs e) //保存
{
SaveFileDialog op = new SaveFileDialog();
op.Title = "Save";
op.Filter = "Text DOcument(*.txt)|*.txt|All Files(*.*)|*.*";
if (op.ShowDialog() == DialogResult.OK)
richTextBox1.SaveFile(op.FileName, RichTextBoxStreamType.PlainText);
this.Text = op.FileName;
}
private void exitToolStripMenuItem1_Click(object sender, EventArgs e) //退出
{
Close();
}
private void undoToolStripMenuItem_Click(object sender, EventArgs e) //撤销
{
richTextBox1.Undo();
}
private void redoToolStripMenuItem_Click(object sender, EventArgs e) //恢复
{
richTextBox1.Redo();
}
private void copyToolStripMenuItem_Click(object sender, EventArgs e) //复制
{
richTextBox1.Copy();
}
private void pasteToolStripMenuItem_Click(object sender, EventArgs e) //粘贴
{
richTextBox1.Paste();
}
private void cutToolStripMenuItem_Click(object sender, EventArgs e) //剪切
{
richTextBox1.Cut();
}
private void selectAllToolStripMenuItem_Click(object sender, EventArgs e) //选择全部
{
richTextBox1.SelectAll();
}
private void dateTimeToolStripMenuItem_Click(object sender, EventArgs e)//日期时间
{
richTextBox1.Text = System.DateTime.Now.ToString();
}
private void fontToolStripMenuItem_Click(object sender, EventArgs e) //字体
{
FontDialog op = new FontDialog();
if (op.ShowDialog() == DialogResult.OK)
richTextBox1.Font = op.Font;
}
private void colorToolStripMenuItem_Click(object sender, EventArgs e) //颜色
{
ColorDialog op = new ColorDialog();
if (op.ShowDialog() == DialogResult.OK)
richTextBox1.ForeColor = op.Color;
}
}
}