大家好,欢迎来到IT知识分享网。
RichTextBox控件允许用户输入和编辑文本的同时提供了比普通的TextBox控件更高级的格式特征。 RichTextBox控件提供了数个有用的特征,你可以在控件中安排文本的格式。要改变文本的格式,必须先选中该文本。只有选中的文本才可以编排字符和段落的格式。有了这些属性,就可以设置文本使用粗体,改变字体的颜色,创建超底稿和子底稿。也可以设置左右缩排或不缩排,从而调整段落的格式。 RichTextBox控件可以打开和保存RTF文件或普通的ASCII文本文件。你可以使用控件的方法(LoadFile和SaveFile)直接读和写文件
要完成下面这个效果图:我们还是需要准备一点东西
-
首先我们需要一个form窗体作为主程序来运行
-
在左侧工具栏中选择我们今天的主角,richtextbox控件
-
之后把他的dock属性设置为Fill,占满整个窗体
-
再来一个menuStrip控件作为窗体的菜单栏
接下来就是这些菜单栏的主要功能的代码实现,可以看到richtextbox给我们提供了非常简单的代码,只需要一行代码就可以实现对rtf文本的复制粘贴等功能,是不是很方便,大家一起来动手试一下吧,有兴趣的同学可以一起加群探讨关于.NET的一些咨询
private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
{
try
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = “bmp|*.bmp|jpg|*.jpg|请选择RTF文件(*.rtf)|*.rtf|所有文件(*.*)|*.*”;
ofd.Multiselect = false;
DialogResult dr = ofd.ShowDialog();
if (dr == DialogResult.OK)
{
string filename = ofd.FileName;//其实filename存储的是文件的路径+文件名
richTextBox1.LoadFile(filename);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void 另存为ToolStripMenuItem_Click(object sender, EventArgs e)
{
SaveFileDialog svd = new SaveFileDialog();
svd.Filter = “rtf文件(*.rtf)|*.rtf”;
if (svd.ShowDialog() == DialogResult.OK)
{
string name = svd.FileName;
richTextBox1.SaveFile(name);
}
}
private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void 撤销ToolStripMenuItem_Click(object sender, EventArgs e)
{
richTextBox1.Undo();
}
private void 重做ToolStripMenuItem_Click(object sender, EventArgs e)
{
richTextBox1.Redo();
}
private void 复制ToolStripMenuItem_Click(object sender, EventArgs e)
{
richTextBox1.Copy();
}
private void 粘贴ToolStripMenuItem_Click(object sender, EventArgs e)
{
richTextBox1.Paste();
}
private void 选择全部ToolStripMenuItem_Click(object sender, EventArgs e)
{
richTextBox1.SelectAll();
}
private void 字体ToolStripMenuItem_Click(object sender, EventArgs e)
{
FontDialog fd = new FontDialog();
if (fd.ShowDialog() == DialogResult.OK)
{
Font ft = fd.Font;
richTextBox1.SelectionFont = ft;
}
}
private void 颜色ToolStripMenuItem_Click(object sender, EventArgs e)
{
ColorDialog cd = new ColorDialog();
if (cd.ShowDialog() == DialogResult.OK)
{
richTextBox1.SelectionColor = cd.Color;
}
}
private void richTextBox1_LinkClicked(object sender, LinkClickedEventArgs e)
{
System.Diagnostics.Process.Start(e.LinkText);
}
private void 插入图片ToolStripMenuItem_Click(object sender, EventArgs e)
{
OpenFileDialog of = new OpenFileDialog();
of.Filter = “图片文件|*.bmp;*.jpg;*.gif;*.png|所有文件|*.*”;
of.Multiselect = false;
DialogResult dr = of.ShowDialog();
if (dr == DialogResult.OK)
{
string filename = of.FileName;
Image image = Image.FromFile(filename);
Clipboard.SetData(DataFormats.Dib , image);
richTextBox1.Focus();
SendKeys.Send(“^V”);
}
}
private void 插入动画ToolStripMenuItem_Click(object sender, EventArgs e)
{
OpenFileDialog of = new OpenFileDialog();
of.Filter = “动画文件|*.gif|所有文件|*.*”;
of.Multiselect = false;
if (of.ShowDialog() == DialogResult.OK)
{
string filepath = of.FileName;
PictureBox pic = new PictureBox();
pic.SizeMode = PictureBoxSizeMode.AutoSize;
pic.Select();
pic.Image = Image.FromFile(filepath);
richTextBox1.Controls.Add(pic);
}
}
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/50634.html