VS2010下,RichEdit 2.0获得焦点后 ,自动全选并且自动滚到到最后一行,请问怎么解决?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VS2010下,RichEdit 2.0获得焦点后 ,自动全选并且自动滚到到最后一行,请问怎么解决?相关的知识,希望对你有一定的参考价值。

编译环境:Win7 sp1 ; VS2010 sp1 工程是Unicode 工程,基于对话框, 只有一个richedit 控件,铺满整个对话框!当鼠标点击其他东西,再点击该窗体时:则自动全选并且自动滚到到最后一行!如果能绝决该问题,再加分!

可以处理richedit控件的EN_SETFOCUS(获得焦点)和EN_KILLFOCUS(失去焦点)消息

声明一个CHARRANGE变量(比如叫cr)记录光标位置,在EN_KILLFOCUS处理函数中调用GetSel(cr)记录当前光标位置,然後在EN_SETFOCUS处理函数中调用SetSel(cr)回覆之前记录的光标位置
参考技术A richedit.SetOptions(ECOOP_OR,ECO_SAVESEL);

以上是关于VS2010下,RichEdit 2.0获得焦点后 ,自动全选并且自动滚到到最后一行,请问怎么解决?的主要内容,如果未能解决你的问题,请参考以下文章

VC2008下CRichEditView加载RichEdit4.1版本(还有一些类似的文章)

如何在 RichEdit 2.0 中自动检测 url?

RichEdit 2.0 使用单个 CR 字符作为换行符会引发 SelStart 计算(Delphi XE2)

来自资源的CRichEditCtrl加载1.0而不是2.0

Visual Studio 2010 不调试 .NET 2.0 代码

delphi 2010 richedit控件字体问题!