如何在多行编辑框中切换自动换行?
我可以使用或不使用它来创建它,但我不知道应该使用哪个消息来切换包装模式。
如何在多行编辑框中切换自动换行?
我可以使用或不使用它来创建它,但我不知道应该使用哪个消息来切换包装模式。
标准 Windows 控件 EDITBOX 不支持切换自动换行。
记事本通过创建新的 EDITBOX 并销毁旧的来模拟它。您可以使用 Spy++ 验证这一点。观察切换自动换行后窗口句柄的变化。
EditBox 不支持切换自动换行。您无法发送任何消息,也无法更改窗口样式,因为MSDN 说:
创建控件后,这些样式不能修改,除非另有说明。
您唯一的选择是创建一个具有所需样式的新控件 ( WS_HSCROLL|ES_AUTOHSCROLL
),将文本复制到新控件中,然后销毁旧控件。
在 Windows 2000 和更高版本上,您可以使用EM_GETHANDLE
+EM_SETHANDLE
来交换缓冲区,而无需复制文本。