gpt4 book ai didi

winapi - Richedit 2.0 在 WM_SETTEXT 后撤消

转载 作者:行者123 更新时间:2023-12-01 02:16:17 29 4
gpt4 key购买 nike

我们使用 Richedit 2.0 作为我们的脚本编辑器,它在您键入时具有自动多级撤消和重做。当我们想要构建我们的脚本或脚本打开时,我重新格式化文本并通过 WM_SETTEXT 将其发送到富编辑控件。这会清除撤消缓冲区。

我怎样才能得到它,以便在重新格式化我的脚本后我仍然可以按 CTRL-Z 并且它会返回到以前的文本,并且在我重新格式化之前之前撤消之前的撤销?我不知道 Richedit 如何保存撤消,但它似乎需要的是一种在我执行 WM_SETTEXT 时不清除撤消缓冲区的方法,并在我这样做之前存储一个撤消点。这可能吗 ?

谢谢

肖恩南

最佳答案

使用 EM_REPLACESEL WPARAM设置为 TRUE启用撤消选项。例子:

//select the whole range to simulate `WM_SETTEXT`
SendMessage(handle, EM_SETSEL, (WPARAM)0, (LPARAM)-1);

//replace text
SendMessage(handle, EM_REPLACESEL, TRUE, (WPARAM)L"Text");

关于winapi - Richedit 2.0 在 WM_SETTEXT 后撤消,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24656427/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com