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

VC++
关于内联汇编的几个技巧
const使用详解
为什么要在operator=中返回*this的引用
如何在派生类中的隐藏基类的虚拟重载函数?
C++指针使用方法解惑
如何用编程获取CD-ROM的驱动器盘符?
声明函数指针并实现回调
定义函数对象
在名字空间中声明类和成员函数
自制性能测试类
为什么operator=操作符返回引用
单实例设计模式的实现
初始化类对象
C++编程杂谈之三:面向对象(续)
C++编程杂谈之二:面向对象
C++编程杂谈之一:编译器
解析动态联编(上篇) - 作者:tingya
解析动态联编(下篇) - 作者:tingya
创建和访问环境变量
在预先定义的内存位置构造一个对象

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 110 ::
收藏到网摘: 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);}