如何在richedit中用程序删除任意一行,插入一行等问题? 我最近刚接触vc,我想在程序中定义几个方法,分别是要在richedit中删除任意行,在任意位置增加一行,载如一个文件到richedit中,取得指定行的内容。能给我具体的代码讲解一下吗?谢谢!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我在把一个文件倒入richedit中时是这样做的,感觉特别烦,不知道大家是否有更简单一点的办法。我的做法如下:我已经在头文件中定义了CRichEditCtrl m_richedit;然后又在OnCreate事件的处理函数中生成了该对象m_richedit.Create(WS_VISIBLE,CRect(0,0,10,10),this,6000);以下是具体的倒入文件的代码: char buffer[128]; CString tmp; long nLen; ifstream infile("test.txt"); while(!infile.eof()) { memset(buffer,0x00,sizeof(buffer)); infile.getline(buffer,128); cout << buffer << endl; tmp += buffer; tmp += "\n"; nLen = GetWindowTextLength(); m_richedit.SetSel(nLen,nLen); m_richedit.ReplaceSel(tmp,false); }总感觉不大好,很麻烦,各位有什么更好的办法吗? 上面那个程序有问题,我发现就算GetWindowTextLength()总是把回车换行给忽略掉,所以本来要分行加到richedit中的内容结果都放到一行中去了。怎么解决这个问题?我现在的做法如下:char buffer[128]; CString tmp; long nLen = 0; ifstream infile("test.txt"); while(!infile.eof()) { memset(buffer,0x00,sizeof(buffer)); infile.getline(buffer,128); cout << buffer << endl; Memo1.SetSel(nLen,nLen); Memo1.ReplaceSel(buffer,false); nLen += CString(buffer).GetLength(); Memo1.SetSel(nLen,nLen); Memo1.ReplaceSel("\r\n",false); nLen += 1; }怎么加上回车换行符呢?这上面的程序能把一个文件倒入到richedit中吗?哦,richedit已经是ES_MULTILINE,ES_WANTRETURN. 小波描述子(Wavelet Descriptor) MFC里面 画的线 怎么 清除 提问 请教一个操作系统线程问题 请教缓冲绘图的问题 求能在CE下用的语音压缩编码库(高分求) 请教高手一个关于directX跨平台的问题 如何把一个CBitmap对象保存为bmp文件? com连接的问题?急! 参数传递问题? 如何只画BITMAP中的图,而不画背景色 如何在VC中动态生成一个XML文档?请大虾指教,高分相送!
以下是具体的倒入文件的代码:
char buffer[128];
CString tmp;
long nLen; ifstream infile("test.txt");
while(!infile.eof())
{
memset(buffer,0x00,sizeof(buffer));
infile.getline(buffer,128);
cout << buffer << endl;
tmp += buffer;
tmp += "\n";
nLen = GetWindowTextLength();
m_richedit.SetSel(nLen,nLen);
m_richedit.ReplaceSel(tmp,false);
}总感觉不大好,很麻烦,各位有什么更好的办法吗?
char buffer[128];
CString tmp;
long nLen = 0;
ifstream infile("test.txt");
while(!infile.eof())
{
memset(buffer,0x00,sizeof(buffer));
infile.getline(buffer,128);
cout << buffer << endl;
Memo1.SetSel(nLen,nLen);
Memo1.ReplaceSel(buffer,false); nLen += CString(buffer).GetLength();
Memo1.SetSel(nLen,nLen);
Memo1.ReplaceSel("\r\n",false);
nLen += 1;
}
怎么加上回车换行符呢?这上面的程序能把一个文件倒入到richedit中吗?哦,richedit已经是ES_MULTILINE,ES_WANTRETURN.