SendMessageEM_REPLACESEL字符串不能发送回车换行
使用EM_REPLACESEL消息发送字符串时,确实无法直接插入回车换行符。这是因为EM_REPLACESEL消息是用于替换当前选定文本的,而不是插入新的文本。
要插入回车换行符,可以使用EM_SETSEL消息将光标移动到要插入的位置,然后使用EM_REPLACESEL消息插入一个带有回车换行符的空字符串。
下面是一个示例代码,演示如何使用SendMessage函数插入回车换行符:
#include <Windows.h>
int main()
{
// 获取当前窗口句柄
HWND hwnd = GetForegroundWindow();
// 将光标移动到当前位置
SendMessage(hwnd, EM_SETSEL, -1, -1);
// 插入回车换行符
SendMessage(hwnd, EM_REPLACESEL, TRUE, (LPARAM)L"\r\n");
return 0;
}
这段代码将在当前活动窗口的光标位置插入一个回车换行符。
请注意,此示例代码是使用C++编写的,需要包含Windows.h头文件,并且需要在Windows环境中编译和运行。如果您在其他环境中使用不同的编程语言,请相应地调整代码。
原文地址: https://www.cveoy.top/t/topic/hQ8o 著作权归作者所有。请勿转载和采集!