一共涉及两个问题:
1.如何更加轻快的在RichText不覆盖之前的文本而添加新的文本
CString text("add text "); //想插入的文本,为了使下次输入我们可以多放一个 ,或者放一个空格来占位。 int len= this->rtxt_recv.GetWindowTextLength(); //获得当前文本框字符长度 this->rtxt_recv.SetSel(len,len);//设置当前选择的字符( 或者空格) this->rtxt_recv.ReplaceSel(text.GetString());//替换选择的那一个字符
2.数据我们已经添加上了,那么怎么让滚动条自动滚动呢,设置滚动条的位置。对。 那代码就是如下:
this->rtxt_recv.SetScrollPos(SB_VERT, this->rtxt_recv.GetScrollLimit(SB_VERT));
可是经过实验证明,滚动条是滚动了 。但是里面的文本不随着滚动啊。。竟然还有这种事!!!
关键的来了只要一句:
this->rtxt_recv.SetFocus();
轻松搞定 呵呵。如果需要输入焦点在别处,再设置到那处即可。