代码:
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
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
剪切ToolStripMenuItem.Enabled = false ;
复制ToolStripMenuItem.Enabled = false;
删除ToolStripMenuItem.Enabled = false;
粘贴ToolStripMenuItem.Enabled = true;
}
private void 新建ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (richTextBox1.Text == string.Empty)
richTextBox1.Text = \"\";
else {
DialogResult result = MessageBox.Show(\"是否将更改保存?\", \"记事本提示\", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Information);
if (result == DialogResult.Yes)
{
Savefile();
Close();
richTextBox1.Text = \"\";
}
else if (result == DialogResult.No)
{
richTextBox1.Text = \"\";
}
}
}
private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
{
openFileDialog1.FileName = \"\";
openFileDialog1.Filter = \"RTF File(*.rtf)|*.RTF|TXT FILE(*.txt)|*.txt\";
openFileDialog1.ShowDialog();
if (openFileDialog1.FileName != \"\")
switch (openFileDialog1.FilterIndex)
{
case 1: //选择的是.rtf类型
richTextBox1.LoadFile(openFileDialog1.FileName, RichTextBoxStreamType.RichText);
break;
case 2: //选择的是.txt类型
richTextBox1.LoadFile(openFileDialog1.FileName, RichTextBoxStreamType.PlainText);
break;
}
}
private void 保存ToolStripMenuItem_Click(object sender, EventArgs e)
{
Savefile();
DialogResult result = MessageBox.Show(\"是否将更改保存?\", \"记事本提示\", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Information);
if (result == DialogResult.Cancel || result == DialogResult.No)
return;
else
{
MessageBox.Show(\"文件保存成功!\", \"记事本提示\");
}
}
private void Savefile()
{
saveFileDialog1.Filter = \"RTF File(*.rtf)|*.RTF|TXT FILE(*.txt)|*.txt\";
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
switch (openFileDialog1.FilterIndex)
{
case 1: //选择的是.rtf类型
richTextBox1.SaveFile(saveFileDialog1.FileName, RichTextBoxStreamType.RichText);
break;
case 2: //选择的是.txt类型
richTextBox1.SaveFile(saveFileDialog1.FileName, RichTextBoxStreamType.PlainText);
break;
}
}
private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (richTextBox1.Text != string.Empty)
{
DialogResult result = MessageBox.Show(\"是否将更改保存?\", \"记事本提示\", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Information);
if (result == DialogResult.Yes)
{
Savefile();
Application.Exit();
}
else if (result == DialogResult.No)
{
Application.Exit();
}
}
else
Application.Exit();
}
private void 字体ToolStripMenuItem_Click(object sender, EventArgs e)
{
fontDialog1.AllowVectorFonts = true;//设置用户可以选择矢量字体
fontDialog1.AllowVerticalFonts = true;//设置字体对话框既显示水平字体,也显示垂直字体
fontDialog1.FixedPitchOnly = false;//设置用户可以选择不固定间距的字体
fontDialog1.MaxSize = 100;//设置可选择的最大字
fontDialog1.MinSize = 5;//设置可选择的最小字
if (fontDialog1.ShowDialog() == DialogResult.OK)//判断是否选择了字体
{
if (richTextBox1.SelectedText == \"\")//判断是否选择了文本
richTextBox1.SelectAll();//全选文本
richTextBox1.SelectionFont = fontDialog1.Font;//设置选中的文本字体
}
}
private void 颜色ToolStripMenuItem_Click(object sender, EventArgs e)
{
colorDialog1.AllowFullOpen = true;//设置允许用户自定义颜色
colorDialog1.AnyColor = true;//设置颜色对话框中显示所有颜色
colorDialog1.SolidColorOnly = false;//设置用户可以在颜色对话框中选择复杂颜色
if (colorDialog1.ShowDialog() == DialogResult.OK)//判断是否选择了颜色
{
if (richTextBox1.SelectedText == \"\")//判断是否选择了文本
richTextBox1.SelectAll();//全选文本
richTextBox1.SelectionColor = colorDialog1.Color;//将选定的文本颜色设置为颜色对话框中选择的颜色
}
}
private void 状态栏ToolStripMenuItem_Click(object sender, EventArgs e)
{
int index = richTextBox1.GetFirstCharIndexOfCurrentLine();
int line = richTextBox1.GetLineFromCharIndex(index) + 1;
int Col = richTextBox1.SelectionStart - index + 1;
toolStripStatusLabel1.Text = line + \"行\";
toolStripStatusLabel2.Text = Col + \"列\";
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (richTextBox1.Text != string.Empty)
{
DialogResult result = MessageBox.Show(\"是否将更改保存?\", \"记事本提示\", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Information);
if (result == DialogResult.Yes)
{
Savefile();
Application.Exit();
}
else if (result == DialogResult.No)
{
Application.Exit();
}
else if (result == DialogResult.Cancel)
{
return;
}
}
else
Application.Exit();
}
private void 剪切ToolStripMenuItem_Click(object sender, EventArgs e)
{
Clipboard.SetDataObject(richTextBox1.SelectedText);
richTextBox1.SelectedText = \"\";
}
private void 复制ToolStripMenuItem_Click(object sender, EventArgs e)
{
richTextBox1.Copy();
}
private void 删除ToolStripMenuItem_Click(object sender, EventArgs e)
{
richTextBox1.SelectedText = \"\";
}
private void 粘贴ToolStripMenuItem_Click(object sender, EventArgs e)
{
richTextBox1.Paste();
}
private void 编辑ToolStripMenuItem_Click(object sender, EventArgs e)
{
if ( richTextBox1.SelectedText != string.Empty)
{
剪切ToolStripMenuItem.Enabled = true;
复制ToolStripMenuItem.Enabled = true;
删除ToolStripMenuItem.Enabled = true;
}
}
private void button1_Click(object sender, EventArgs e)
{
if (richTextBox1.Text == string.Empty)
richTextBox1.Text = \"\";
else
{
DialogResult result = MessageBox.Show(\"是否将更改保存?\", \"记事本提示\", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Information);
if (result == DialogResult.Yes)
{
Savefile();
Close();
richTextBox1.Text = \"\";
}
else if (result == DialogResult.No)
{
richTextBox1.Text = \"\";
}
}
}
//一下是工具栏代码设计
private void button2_Click(object sender, EventArgs e)
{
openFileDialog1.FileName = \"\";
openFileDialog1.Filter = \"RTF File(*.rtf)|*.RTF|TXT FILE(*.txt)|*.txt\";
openFileDialog1.ShowDialog();
if (openFileDialog1.FileName != \"\")
switch (openFileDialog1.FilterIndex)
{
case 1: //选择的是.rtf类型
richTextBox1.LoadFile(openFileDialog1.FileName, RichTextBoxStreamType.RichText);
break;
case 2: //选择的是.txt类型
richTextBox1.LoadFile(openFileDialog1.FileName, RichTextBoxStreamType.PlainText);
break;
}
}
private void button5_Click(object sender, EventArgs e)
{
Savefile();
DialogResult result = MessageBox.Show(\"是否将更改保存?\", \"记事本提示\", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Information);
if (result == DialogResult.Cancel || result == DialogResult.No)
return;
else
{
MessageBox.Show(\"文件保存成功!\", \"记事本提示\");
}
}
private void button4_Click(object sender, EventArgs e)
{
int index = richTextBox1.GetFirstCharIndexOfCurrentLine();
int line = richTextBox1.GetLineFromCharIndex(index) + 1;
int Col = richTextBox1.SelectionStart - index + 1;
toolStripStatusLabel1.Text = line + \"行\";
toolStripStatusLabel2.Text = Col + \"列\";
}
private void button3_Click(object sender, EventArgs e)
{
Clipboard.SetDataObject(richTextBox1.SelectedText);
richTextBox1.SelectedText = \"\";
}
private void button6_Click(object sender, EventArgs e)
{
richTextBox1.Copy();
}
private void button8_Click(object sender, EventArgs e)
{
richTextBox1.SelectedText = \"\";
}
private void button7_Click(object sender, EventArgs e)
{
richTextBox1.Paste();
}
private void hScrollBar1_Scroll(object sender, ScrollEventArgs e)
{
richTextBox1.Text = (hScrollBar1.Value * 0.5).ToString();
}
private void vScrollBar1_Scroll(object sender, ScrollEventArgs e)
{
richTextBox1.Text = (vScrollBar1.Value * 0.5).ToString();
}
}
}
因篇幅问题不能全部显示,请点此查看更多更全内容