CFE_LINK是否存储在RTF RichEdit 3.0中?

问题描述 投票:1回答:1

我使用MS TextServices实现无窗口富文本编辑和设置CFE_LINK来创建超链接。这一切都有效但当我将文本保存到我的内部缓冲区以写入文件时,CFE_LINK效果不会被保存。

我(尝试)确保自动检测URL为OFF。

我使用EM_STREAMOUT从编辑器保存到缓冲区,因为RichEdit的UTF-8似乎不能与Unicode一起使用。

我查看了保存的RTF并查看了MS RTF规格,我看不出会使用哪个控制字,所以现在我担心它实际上没有保存。

delphi richtextbox rtf richedit
1个回答
1
投票

从我的经验来看,答案似乎是否定的.squhedhed控件动态创建超链接格式,但不存储它。

六年前左右,我花了很多时间尝试使用riched20.dll(当时是richedit控件的第3版)来实现你可能要做的事情。我希望在笔记本应用程序中有“正确”的超链接:url将被标记为隐藏文本,而描述文本将加下划线并可点击。我能做的最好的事情就是在运行时实现这一点,用CFE_LINK标记任意一段文本。保存并重新加载rtf流后,更改将会消失。没有任何问题可以做任何好事,尽管在StackOverflow之前就好了:)

我的解决方案是用第三方控件替换richedit,例如TRichView,它可以做你想要的。

© www.soinside.com 2019 - 2024. All rights reserved.