如何解决在外部应用程序的文本区域中设置carret的位置?
| 感谢Rob Kennedy对我有关如何设置Skype聊天窗口文本的问题的回答。 但是,每当我使用SendMessage(RichEditWnd,WM_SETTEXT,Integer(PChar(Edit1.Text)));
然后,当我在Skype中单击“聊天编辑”控件时,将尖角放置在开始处,并且需要单击以使其再次“正确”。
是否有Windows消息来设置刀架位置?还是至少可以将“ Carret Position”设置为文本末尾的内容? :)
解决方法
是的,有:
EM_EXSETSEL
。
wParam
应为0
,lParam
应为指向TCharRange
结构的指针,该结构包含所选内容的第一个和最后一个字符。您希望它们相等(即选择零个字符)。
例如,
var
cr: TCharRange;
begin
cr.cpMin := 2;
cr.cpMax := 2;
SendMessage(RichEdit1.Handle,EM_EXSETSEL,integer(@cr));
将在Rich Edit控件中的第三个字符之前设置插入符号。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。