当前位置: 首页 > 图文教程 > 开发语言 > VC++ > 通过程序向RichEditView写文本

VC++
自绘菜单的实现
电子式时钟
VC++工程中加入 SplashScreen 原理释解
类似 MSN 带转义字符的信息发送框的制作(下)
类似 MSN 信息发送框的制作(上)
多功能标签CLabelEx
一步步制作真彩工具条
增加状态栏按钮及其它......
子类化:增强Edit控件为日期输入控件
.NET中的自绘机制
电子八段管的仿真控件
树控件的应用 -- 求子树节点的集
树视控件在多文档中的使用
在List Control中实现列表项目的上下移动
可设置单元格颜色的ClistCtrl类
属性列表的开发
在MDI程序中实现类似WPS2000的文件切换标签
VC控件 TreeCtrl 与 ListCtrl 演示
为对话框中的控件增加提示的简单方法
类似EXCEL的开发库(更新)

VC++ 中的 通过程序向RichEditView写文本


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 107 ::
收藏到网摘: n/a

通过程序向RichEditView写文本
作者:陈新之

下载本文示例代码

在建立SDI或MDI程序时,如果选择了RichEditView,就可以利用RichEdit提供的丰富的格式,但是如何通过程序在RichEditView中写入文本却是一个问题,下文就介绍了如何实现用程序在RichEditView中写文本.

一、在文本末尾写文字
void CRichEditUseDoc::OnTextWriteafter() {	CString str;	int nTextLength;	CRichEditView *pView = GetView();	CRichEditCtrl &edit = pView->GetRichEditCtrl();	//要写的内容为ABCDEFG	str = "ABCDEFG";	//加入换行	str += "\r\n";	//获得文字的长度	nTextLength = edit.GetWindowTextLength();	//将光标放在文本最末	edit.SetSel(nTextLength, nTextLength);	//写入文本	edit.ReplaceSel(str);}
二、在光标后插入文本,可以使用CHARRANGE结构
void CRichEditUseDoc::OnTextWriteCur() {	CString str;	CHARRANGE crPos;	CRichEditView *pView = GetView();	CRichEditCtrl &edit = pView->GetRichEditCtrl();	//用CHARRANGE结构体获得选择的文本位置	edit.GetSel(crPos);	//要写的内容为12345	str = "12345";	//如果没有选中文本,就直接写在光标后	//如果选中了文本,就替代选中的文本	if (crPos.cpMin != crPos.cpMax)	{	edit.SetSel(crPos.cpMin, crPos.cpMax);	}	else	{	edit.SetSel(crPos.cpMax, crPos.cpMax);	}	edit.ReplaceSel(str);	}
三、全选文本
void CRichEditUseDoc::OnTextSelectall() {	CRichEditView *pView = GetView();	CRichEditCtrl &edit = pView->GetRichEditCtrl();	edit.SetSel(0, -1);}