我创建了一个新应用程序,放在 TRichedit 上并将 PlainText 属性设置为 true。然后我运行应用程序并将一些格式丰富的文本粘贴到 RichEdit 中。
我希望它显示为纯文本,但它显示带有格式的内容。
任何人都知道如何将 TRichedit 用作纯文本(而不是使用备忘录 :))
您需要手动进行粘贴,以确保忽略格式。
if Clipboard.HasFormat(CF_TEXT) then
RichEdit.SelText := Clipboard.AsText;
从.WM_PASTE
我目前不知道如何拦截CTRL+V按键并用这段代码替换它。WM_PASTE
消息不会发送到 Rich Edit 控件。
正如 Cody 在评论中建议的那样,一种解决方案如下:
TRichEdit
和覆盖CNNotify
。EN_PROTECTED
消息,如果msg=WM_PASTE
然后使用上面的粘贴作为文本代码并从消息处理程序返回 1 以指示请求的操作(丰富的粘贴)被拒绝。