RichEdit 不尊重带有粘贴内容的纯文本
我创建一个新应用程序,放置 TRichedit 并将 PlainText 属性设置为 true。然后,我运行该应用程序并将一些富格式文本粘贴到 RichEdit 中。
我希望它显示为纯文本,但它显示带有格式的内容。
任何人都知道如何使用 TRichedit 就像纯文本一样(而不是使用备忘录:))
I create a new application, drop on a TRichedit and set the PlainText property to true. I then run the application and paste some rich formatted text into the RichEdit.
I would expect it to display as plain text however it shows the content with the formatting.
Anyone know how to use a TRichedit just as plain text (and not using a memo :))
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要手动进行粘贴,以确保忽略格式。
从的消息处理程序运行此代码。WM_PASTE
我目前不知道如何拦截 CTRL+V 按键并将其替换为此代码。
WM_PASTE
消息不会发送到丰富的编辑控件。正如 Cody 在评论中建议的那样,一种解决方案如下:
TRichEdit
并覆盖CNNotify
。EN_PROTECTED
消息,如果msg=WM_PASTE
则使用上面的粘贴作为文本代码,并从消息处理程序返回 1 以指示请求的操作(丰富的粘贴)被拒绝。You'll need to do the paste manually ensuring that the formatting is ignored.
Run this code from a message handler for.WM_PASTE
I currently do not know how to intercept the CTRL+V keypress and replace it with this code. The
WM_PASTE
message is not sent to rich edit controls.As Cody suggests in the comment, one solution is as follows:
TRichEdit
and overrideCNNotify
.EN_PROTECTED
message, and ifmsg=WM_PASTE
then use the paste as text code above and return 1 from the message handler to indicate that the requested operation (a rich paste) is rejected.