写字板程序的所有功能几乎都是围绕richTextBox这个控件的,所以我们这边设计的代码都是关于richTextBox这个控件的方法属性的使用。当然还有一些其他基本控件的使用。如果有过java swing编程基础或者编写过VB等程序就很容易理解。
主要就是粘贴代码,对于一些重要部分做出解释。
打开文件:
private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
{
openFileDialog1.Filter = "文本文件|*.txt|RTF文本文档|*.rtf|所有写字板文档|*.txt;*.rtf|所有文件|*.*";
openFileDialog1.FileName = "";
openFileDialog1.FilterIndex = 3;
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
richTextBoxContent.Clear();
richTextBoxContent.LoadFile(openFileDialog1.FileName, RichTextBoxStreamType.RichText);
CurFileName = openFileDialog1.FileName;
this.Text = "C#写字板 " + CurFileName;
Start = 0;
}
}
主要用到openFileDalog控件,这个控件用于显示一个打开文件或者文件夹的窗口,待用户选择后,调用这个控件获得的文件路径。
这里首先要对这个控件进行设置,Filter属性需要一行文本,文本格式就是上述代码,先是要显示的提醒,用“|”分割符号分割,然后显示要显示文件的通配符,如果要显示多个通配符的话就用“;”分号隔开。
FilterIndex属性用于设置默认filter是哪个,从1开始。
然后调用ShowDialog()方法显示打开文件的窗口。它的返回值是用户到底按下了哪个按钮,使用枚举类型DialogResult进行匹配。
然后就是将文件载入到richTextBox中了,我们这边使用richTextBox的LoadFile方法,第一个参数是文件路径,第二个参数是载入模式,richText表示载入富文本,包括文件中的图片和字体格式。
保存文件:
private void 保存ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (CurFileName != string.Empty)
{
Save();
}
else
{
SaveAs();
}
}
private void Save()
{
if (CurFileName == string.Empty)
{
SaveAs();
}
else
{
if (CurFileName.EndsWith(".rtf"))
{
richTextBoxContent.SaveFile(CurFileName, RichTextBoxStreamType.RichText);
}
else
{
richTextBoxContent.SaveFile(CurFileName, Rich