使用WM_SETTEXT来替换窗口的内容,同时保持窗口滚动位置

本文关键字:窗口 位置 滚动 WM SETTEXT 替换 使用 | 更新日期: 2023-09-27 18:15:22

我正在构建一个将RTF文本发送到第三方窗口的应用程序。它基本上在原始的第三方IDE中提供自动更正功能。

我可以设置该窗口的内容(即更正的代码),但这样做会将窗口的滚动位置设置为顶部。这是非常烦人的,因为用户必须向下滚动到自动更正之前的位置。

我可以将光标设置到正确的位置(在页面的下方),但这并不能阻止窗口滚动到顶部。

有什么建议吗?

使用WM_SETTEXT来替换窗口的内容,同时保持窗口滚动位置

WM_SETTEXT是在替换一小部分文本时使用的错误消息。您可以使用WM_SETTEXT来设置控件的整个文本内容。

你要做的是选择需要更正的单词。使用EM_SETSEL。然后用EM_REPLACESEL将文本替换为更正后的版本。我希望这也能解决不想要的滚动问题。