在我的一个Access应用程序中,我希望用户能够删除文本框中的单词。这些文本框现已启用“富文本格式”,可以在其中加粗,加下划线,更改颜色等,但“删除线”不可用。
我当时以为文本对象模型是可行的方法,但是找不到用vba编写的代码在任何地方使用的示例。
我在我的应用程序中引用了文本对象模型(tom)。但是,然后,我无法将对象引用设置为已用鼠标选择的句子。
有没有认识或可以向我展示的人:
“常规”或ActiveX文本框是否都具有允许使用tom访问它们的钩子?
如果Access中的文本框不具有此功能,是否还有其他方法可以使条目中的删除线功能得到实现?
哪里有vba示例可以帮助我解决这个问题?
非常感谢您的输入 v / r, 约翰尼
答案 0 :(得分:0)
我无法为您提供TOM,而且我不确定RTF编辑器能否完全处理删除线-至少与此有关的问题数量如此。相反,我提供了一种解决方法:
Private Sub btnStrikethrough_Click()
Me.Field1.Value = StrikeThrough(Me.Field1.Value)
End Sub
Function StrikeThrough(Text As String) As String
For i = 1 To Len(Text)
StrikeThrough = StrikeThrough & ChrW(822) & Mid(Text, i, 1)
Next i
End Function
对于您的需要来说,这可能太过钝了,但是它将贯穿您的文本。通过在每个字符前插入U + 0336(合并长笔画叠加)来实现此目的,使合并结果可见。如果您有其他格式,它将破坏它,但是我认为可以通过一些解析来处理。