RichTextBox控件-主要用于输入输出编辑文本信息

时间:2023-03-08 15:45:25
RichTextBox控件-主要用于输入输出编辑文本信息

1、在RichTextBox控件中添加超链接文字

        private void btn_Add_Click(object sender, EventArgs e)
{
rtbox_HyperLink.AppendText(//向控件中添加文本信息
@"明日科技:http://www.mingrisoft.com/
谷歌:http://www.google.cn/
网易:http://www.163.com/
百度:http://www.baidu.com/
CSDN:http://www.csdn.net/
腾讯:http://www.qq.com/
QQ书签:http://shuqian.qq.com/
QQ空间:http://qzone.qq.com/
校内网:http://www.xiaonei.com/");
} private void rtbox_HyperLink_LinkClicked(object sender, LinkClickedEventArgs e)
{
System.Diagnostics.Process.Start(//使用IE打开指定网址
"iexplore.exe", e.LinkText);//启用另一个线程
}

2、在RichTextBox控件中插入图片

        private void btn_InsertImage_Click(object sender, EventArgs e)
{
OpenFileDialog P_OpenFileDialog = //创建打开文件对话框对象
new OpenFileDialog();
P_OpenFileDialog.Filter = "*.jpg|*.jpg|*.bmp|*.bmp";
DialogResult P_DialogResult = //弹出打开文件对话框
P_OpenFileDialog.ShowDialog();
if (P_DialogResult==DialogResult.OK)//判断是否选中文件
{
Clipboard.SetDataObject(//将图像放入剪切板
Image.FromFile(P_OpenFileDialog.FileName), false);
if (rtbox_Display.CanPaste(//判断剪切板内是否是图像
DataFormats.GetFormat(DataFormats.Bitmap)))
{
rtbox_Display.Paste();//粘贴剪切板的内容到控件中
}
}
}

3、在RichTextBox控件中显示RTF格式的文件

    public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private static string fileName = ""; //该变量用来保存文件的内容
private OpenFileDialog G_OpenFileDialog = //定义打开文件对话框字段并赋值
new OpenFileDialog();
private SaveFileDialog G_SaveFileDialog = //定义保存文件对话框字段并赋值
new SaveFileDialog(); private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
{
((ToolStripMenuItem)Menu_Main.Items["文件ToolStripMenuItem"]).//停用保存功能
DropDownItems["保存ToolStripMenuItem"].Enabled = false;
G_OpenFileDialog.Filter = "RTF文件(*.RTF)|*.RTF";//设置打开文件的过滤参数
        //当打开的文件内容不为空且点击“打开”按钮时
if (G_OpenFileDialog.ShowDialog() == DialogResult.OK && G_OpenFileDialog.FileName.Length > )
{
fileName = G_OpenFileDialog.FileName;//保存打开文件的文件名
this.richTextBox1.LoadFile(fileName, RichTextBoxStreamType.RichText);//从指定位置加载RTF文件
}
} private void 清空ToolStripMenuItem1_Click(object sender, EventArgs e)
{
richTextBox1.Clear();//清空RichTextBox控件中的内容
richTextBox1.Focus();//时RichTextBox控件获得焦点
} private void 保存ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (File.Exists(fileName))//如果存在该文件
{
richTextBox1.SaveFile(fileName, RichTextBoxStreamType.RichNoOleObjs);//在指定路径下保存
MessageBox.Show("保存成功!", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);//弹出保存成功的提示信息
richTextBox1.Clear();//清空RichTextBox控件中的内容
}
else//当不存在该文件时
{
G_SaveFileDialog.Filter = "RTF文件(*.RTF)|*.RTF";//设置保存文件的保存格式
          //当保存文件的文件名存在且点击的是“保存”按钮时
if (G_SaveFileDialog.ShowDialog() == DialogResult.OK && G_SaveFileDialog.FileName.Length > ) {
richTextBox1.SaveFile(G_SaveFileDialog.FileName + ".RTF");//在指定位置下保存RTF文件
}
}
} private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
{
Application.Exit();//退出应用程序
} private void richTextBox1_TextChanged(object sender, EventArgs e)
{
if (richTextBox1.Text != "")//当RichTextBox控件中存在内容时
{
((ToolStripMenuItem)Menu_Main.Items["文件ToolStripMenuItem"]).//启用保存功能
DropDownItems["保存ToolStripMenuItem"].Enabled = true;
}
else//当RichTextBox控件中不存在内容时
{
((ToolStripMenuItem)Menu_Main.Items["文件ToolStripMenuItem"]).//停用保存功能
DropDownItems["保存ToolStripMenuItem"].Enabled = false;
}
}
}

4、使用RichTextBox控件保存文件

    public partial class Frm_Main : Form
{
public Frm_Main()
{
InitializeComponent();
}
private OpenFileDialog G_OpenFileDialog = //声明打开文件对话框字段并赋值
new OpenFileDialog();
private SaveFileDialog G_SaveFileDialog = //声明保存文件对话框字段并赋值
new SaveFileDialog(); private void btn_Open_Click(object sender, EventArgs e)
{ } private void btn_Save_Click(object sender, EventArgs e)
{ } private void 打开RTFToolStripMenuItem_Click(object sender, EventArgs e)
{
G_OpenFileDialog.Filter = "text.rtf|*.rtf*";//筛选文件信息
if (this.G_OpenFileDialog.ShowDialog() == DialogResult.OK)//判断是否打开文件
{
rtbox_Display.LoadFile(//载入rtf文件
G_OpenFileDialog.FileName, RichTextBoxStreamType.RichText);
}
} private void 保存成TXT文件ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (rtbox_Display.Text != "")//判断控件中是否有文本内容
{
G_SaveFileDialog.DefaultExt = "*.txt";//设置文件默认扩展名
G_SaveFileDialog.Filter = "Txt Files|*.txt";//筛选文件信息
if (this.G_SaveFileDialog.ShowDialog() == DialogResult.OK)//判断是否确认保存文件
{
rtbox_Display.SaveFile(//保存文件
this.G_SaveFileDialog.FileName, RichTextBoxStreamType.PlainText);
MessageBox.Show("保存成功", "信息提示",//弹出消息对话框
MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
else
{
MessageBox.Show("请打开文件", "信息提示", //弹出消息对话框
MessageBoxButtons.OK, MessageBoxIcon.Information);
}
} private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
{
Application.Exit();
}
}

5、控制文本对齐方式

        private void justifyCenter_Click(object sender,EventArgs e)
{
this.richTextBox1.SelectionAlignment = HorizontalAlignment.Center;//设置选定的文本为居中对齐
} private void justifyLeft_Click(object sender,EventArgs e)
{
this.richTextBox1.SelectionAlignment = HorizontalAlignment.Left;//设置选定的文本为左对齐
} private void justifyRight_Click(object sender,EventArgs e)
{
this.richTextBox1.SelectionAlignment = HorizontalAlignment.Right;//设置选定的文本为右对齐
}