📄 form1.cs
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace 记事本
{
public partial class Form1 : Form
{
string filename;
public string replacesteing;
public string findstring;
public int findplace;
bool ischanged;
Find f = new Find();
Replace r = new Replace();
About a = new About();
public Form1()
{
InitializeComponent();
findstring = "";
replacesteing = "";
findplace=0;
this.Text = "未定标题--记事本";
filename = " ";
ischanged = false;
this.printDocument1.PrintPage += new System.Drawing.Printing.PrintPageEventHandler(printDocument1_PrintPage);
f.button1.Click += new EventHandler(button1_Click);
r.button2.Click += new EventHandler(button2_Click);
r.button3.Click += new EventHandler(button3_Click);
r.rbutton1.Click += new EventHandler(rbutton1_Click);
}
void rbutton1_Click(object sender, EventArgs e)
{
r.findstring = r.textBox1.Text;
if((r.findplace=richTextBox1.Text.IndexOf(r.findstring,r.findplace))==-1)
{
MessageBox.Show("no find");
r.findplace=0;
}
else
{
richTextBox1.Select(r.findplace,r.findstring.Length);
this.Activate();
r.findplace+=r.findstring.Length;
}
//throw new Exception("The method or operation is not implemented.");
}
void button3_Click(object sender, EventArgs e)
{
r.findstring = r.textBox1.Text;
r.replacestring = r.textBox2.Text;
this.richTextBox1.Text = richTextBox1.Text.Replace(r.findstring, r.replacestring);
//throw new Exception("The method or operation is not implemented.");
}
void button2_Click(object sender, EventArgs e)
{
r.replacestring = r.textBox2.Text;
richTextBox1.SelectedText = r.replacestring;
//throw new Exception("The method or operation is not implemented.");
}
void button1_Click(object sender, EventArgs e)
{
string source; //被查找的文本
string finding; //查找的关键字
f.findstring = f.textBox1.Text;
if ((f.findplace = richTextBox1.Text.IndexOf(f.findstring, f.findplace)) == -1)
{
MessageBox.Show("no find");
f.findplace = 0;
}
else
{
//区分大小写
if(this.f.checkBox1.Checked==false)
{
source = this.richTextBox1.Text.ToLower();
finding=this.f.textBox1.Text.ToLower();
int temp = source.IndexOf(finding,f.findplace);
this.richTextBox1.Select(temp,finding.Length);
Activate();
f.findplace +=finding.Length;
}
else
{
source=this.richTextBox1.Text;
finding=this.f.textBox1.Text;
this.richTextBox1.Select(f.findplace, finding.Length);
Activate();
f.findplace += finding.Length;
}
}
}
void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
string s = richTextBox1.Text;
e.Graphics.DrawString(s, richTextBox1.Font, Brushes.Black, 20, 20);
}
private void richTextBox1_TextChanged(object sender, EventArgs e)
{
ischanged = true;
if (richTextBox1.Text.Length > 0)
{
撤消UToolStripMenuItem.Enabled = true;
复制CToolStripMenuItem.Enabled = true;
删除LDelToolStripMenuItem.Enabled = true;
剪切ToolStripMenuItem.Enabled = true;
全选ACtrlAToolStripMenuItem.Enabled = true;
}
else
{
撤消UToolStripMenuItem.Enabled = false;
剪切ToolStripMenuItem.Enabled = false;
复制CToolStripMenuItem.Enabled = false;
删除LDelToolStripMenuItem.Enabled = false;
全选ACtrlAToolStripMenuItem.Enabled = false;
}
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
filename = this.Text;
if (this.ischanged== true)
{
DialogResult result = MessageBox.Show(filename+"的文本已经改变,"+'\n'+"想保存文件吗?", "提示", MessageBoxButtons.YesNoCancel,MessageBoxIcon.Warning);
if (result == DialogResult.Yes)
{
this.saveFileDialog1.Filter = "所有文件(*.*)|*.*|文本文档(*.txt)|*.txt";
this.saveFileDialog1.FileName = filename;
this.saveFileDialog1.ShowDialog();
}
}
}
private void 全选ACtrlAToolStripMenuItem_Click(object sender, EventArgs e)
{
this.richTextBox1.SelectAll();
}
private void 查找FCtrlFToolStripMenuItem_Click_1(object sender, EventArgs e)
{
if (f.IsDisposed)
{
f = new Find();
f.Show();
}
else
{
f.Show();
}
}
private void 替换RCtrlHToolStripMenuItem_Click_1(object sender, EventArgs e)
{
if (r.IsDisposed)
{
r = new Replace();
r.Show();
}
else
{
r.Show();
}
}
private void richTextBox1_KeyUp(object sender, KeyEventArgs e)
{
//if (richTextBox1.SelectedText.Length > 0)
//{
// 剪切ToolStripMenuItem.Enabled = true;
// 复制CToolStripMenuItem.Enabled = true;
//}
//else
//{
// 剪切ToolStripMenuItem.Enabled = false;
// 复制CToolStripMenuItem.Enabled = false;
//}
}
private void 删除LDelToolStripMenuItem_Click(object sender, EventArgs e)
{
this.richTextBox1.Clear();
}
private void 剪切ToolStripMenuItem_Click_1(object sender, EventArgs e)
{
this.richTextBox1.Cut();
}
private void 撤消UToolStripMenuItem_Click_1(object sender, EventArgs e)
{
this.richTextBox1.Undo();
}
private void 复制CToolStripMenuItem_Click_1(object sender, EventArgs e)
{
this.richTextBox1.Copy();
}
private void 粘贴PToolStripMenuItem_Click_1(object sender, EventArgs e)
{
this.richTextBox1.Paste();
}
private void 自动换行ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (this.自动换行ToolStripMenuItem.Checked == true)
{
this.自动换行ToolStripMenuItem.Checked = false;
this.richTextBox1.WordWrap = false;
}
else
{
this.自动换行ToolStripMenuItem.Checked = true;
this.richTextBox1.WordWrap = true;
}
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void 新建ToolStripMenuItem_Click_1(object sender, EventArgs e)
{
this.Text = "未定标题--记事本";
filename = this.Text;
richTextBox1.Clear();
filename = "";
if (this.ischanged == true)
{
DialogResult result = MessageBox.Show(filename + "的文本已经改变," + '\n' + "想保存文件吗?", "提示", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning);
if (result == DialogResult.Yes)
{
this.saveFileDialog1.Filter = "所有文件(*.*)|*.*|文本文档(*.txt)|*.txt";
this.saveFileDialog1.FileName = filename;
this.saveFileDialog1.ShowDialog();
}
}
ischanged = false;
this.richTextBox1.Text = "";
filename = "";
}
private void 打开ToolStripMenuItem_Click_1(object sender, EventArgs e)
{
openFileDialog1.Filter = "文本文档(*.txt)|*.txt|所有文件(*.*)|*.*";
openFileDialog1.FileName = "*.txt";
if (this.ischanged == true)
{
DialogResult result = MessageBox.Show(filename + "的文本已经改变," + '\n' + "想保存文件吗?", "提示", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning);
if (result == DialogResult.Yes)
{
this.saveFileDialog1.Filter = "所有文件(*.*)|*.*|文本文档(*.txt)|*.txt";
this.saveFileDialog1.FileName = filename;
this.saveFileDialog1.ShowDialog();
}
}
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
filename = openFileDialog1.FileName;
this.Text = "记事本--" + filename;
richTextBox1.LoadFile(filename, RichTextBoxStreamType.PlainText);
}
}
private void 保存ToolStripMenuItem_Click_1(object sender, EventArgs e)
{
if (filename == " ")
{
saveFileDialog1.FileName = "*.txt";
saveFileDialog1.Filter = "文本文档(*.txt)|*.txt|所有文件(*.*)|*.*";
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
filename = saveFileDialog1.FileName;
this.Text = "记事本--" + filename;
richTextBox1.SaveFile(filename, RichTextBoxStreamType.PlainText);
}
}
else
{
richTextBox1.SaveFile(filename, RichTextBoxStreamType.PlainText);
ischanged = false;
}
}
private void 页面设置ToolStripMenuItem_Click_1(object sender, EventArgs e)
{
string mes = "打印之前必须已经安装打印机." + '\n' + "要安装打印机,请单击'开始',指向'设置',选定'打印机',然后再双击'安装打印机'";
pageSetupDialog1.Document = this.printDocument1;
try
{
pageSetupDialog1.ShowDialog();
}
catch
{
MessageBox.Show(mes, "打印错误", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
private void toolStripMenuItem1_Click_1(object sender, EventArgs e)
{
string mes = "打印之前必须已经安装打印机." + '\n' + "要安装打印机,请单击'开始',指向'设置',选定'打印机',然后再双击'安装打印机'";
printPreviewDialog1.Document = this.printDocument1;
try
{
printPreviewDialog1.ShowDialog();
}
catch
{
MessageBox.Show(mes, "打印错误", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
private void 打印ToolStripMenuItem_Click_1(object sender, EventArgs e)
{
if (printDialog1.ShowDialog() == DialogResult.OK)
{
printDocument1.Print();
}
}
private void 退出XToolStripMenuItem_Click_1(object sender, EventArgs e)
{
Close();
}
private void 字体ToolStripMenuItem_Click_1(object sender, EventArgs e)
{
if (fontDialog1.ShowDialog() == DialogResult.OK)
{
richTextBox1.Font = fontDialog1.Font;
}
}
private void 另存为ToolStripMenuItem_Click_1(object sender, EventArgs e)
{
saveFileDialog1.FileName = "*.txt";
saveFileDialog1.Filter = "文本文档(*.txt)|*.txt|所有文件(*.*)|*.*";
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
filename = saveFileDialog1.FileName;
this.Text = "记事本--" + filename;
richTextBox1.SaveFile(filename, RichTextBoxStreamType.PlainText);
}
}
private void 帮助主题HToolStripMenuItem_Click_1(object sender, EventArgs e)
{
Help.ShowHelp(this, "C:\\WINNT\\Help\\notepad.chm");
}
private void 时间日期DF5ToolStripMenuItem_Click(object sender, EventArgs e)
{
string time = System.DateTime.Now.ToString();
richTextBox1.SelectedText = time;
}
private void 关于记事本AToolStripMenuItem_Click(object sender, EventArgs e)
{
a.Show();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -