通过程序向RichEditView写文本

王朝vc·作者佚名  2006-01-17
窄屏简体版  字體: |||超大  

通过程序向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);

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航