如何在Win32中向富编辑控件插入文本,同时保留任何以前的格式

r00*_*00m 3 c++

我正在win32中开发聊天应用程序.目前我正在为丰富的编辑控件文本动态分配内存,添加新行并使用SetWindowText设置新文本.

当消息到达时会显示特定的关键字,应用会为该行着色并将其附加到聊天窗口.一切安好.收到下一条消息时出现问题 - 以前的格式丢失了!

如何解决这个问题?

r00*_*00m 5

好的,我已经解决了.我正在用未经过格式化的版本替换文本.以下是如何将文本正确附加到富编辑控件:

CHARRANGE cr;
cr.cpMin = -1;
cr.cpMax = -1;

// hwnd = rich edit hwnd
SendMessage(hwnd, EM_EXSETSEL, 0, (LPARAM)&cr);
SendMessage(hwnd, EM_REPLACESEL, 0, (LPARAM)stringtoappend);
Run Code Online (Sandbox Code Playgroud)