在外部应用程序的文本区域中设置插入符位置?
感谢 Rob Kennedy 对我的问题的回答 如何设置 Skype 聊天窗口文本。
但是,每当我使用
SendMessage(RichEditWnd,WM_SETTEXT,0,Integer(PChar(Edit1.Text)));
then 设置文本时,当我单击中的聊天编辑控件时Skype,插入符号位于开头,需要单击一些才能再次“正确”。
是否有用于设置插入符位置的 Windows 消息?或者至少可以用来将 Carret 位置设置到文本末尾? :)
Thanks to Rob Kennedy's answer to my question on how to set the Skype Chat window text.
However, whenever I set the text using
SendMessage(RichEditWnd,WM_SETTEXT,0,Integer(PChar(Edit1.Text)));
Then when I click on the Chat Edit control in Skype, the carret is placed at the beginning and some clicking is required to get it "right" again.
Is there a Windows Message for setting the carret position? Or atleast something that I can use to set the Carret Position to the end of the text? :)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
是的,有:
EM_EXSETSEL
。wParam
应该是0
,lParam
应该是指向包含第一个和最后一个字符的TCharRange
结构的指针选择。您希望它们相等(即选择零个字符)。例如,
将在 Rich Edit 控件中的第三个字符之前设置插入符号。
Yes, there is:
EM_EXSETSEL
.wParam
should be0
, andlParam
should be a pointer to aTCharRange
structure containing the first and last characters in the selection. You want these to be equal (that is, zero characters selected).For instance,
will set the caret just before the third character in the Rich Edit control.