【问题标题】:Inserting CrossReference to word via Delphi XE5通过 Delphi XE5 插入对单词的交叉引用
【发布时间】:2014-03-25 04:41:55
【问题描述】:

你好,你好,

我正在制作这个用于创建 word 文档的 delphi 应用程序。我已经完成了基本的单词操作(创建/保存、文本、表格等)。

我需要做的是在文本中插入标题的页码作为交叉引用。类似的东西:

"...并且该过程按照第 23 页的说明进行..."

其中页码是指向标题的超链接。当我用 word 录制宏时,它看起来像:

    Selection.InsertCrossReference ReferenceType:="Heading", _
    ReferenceKind:=wdPageNumber, ReferenceItem:="49", InsertAsHyperlink:=True _
    , IncludePosition:=False, SeparateNumbers:=False, SeparatorString:=" "

请问在 Delphi 中的等价物是什么?

提前致谢! 阿琼。

【问题讨论】:

  • 您使用的是早期绑定还是后期绑定?
  • @SilentD,我想我正在使用“LateBinding”。好吧,我的代码看起来类似于后期绑定。据我了解...Link

标签: delphi delphi-xe5 word-2010


【解决方案1】:

即使您使用后期绑定,您仍然需要按照与原始声明相同的顺序提供所有参数。

expression.InsertCrossReference(ReferenceType, ReferenceKind, ReferenceItem,
InsertAsHyperlink, IncludePosition, SeparateNumbers, SeparatorString)

如果您不使用参数,则可以将其替换为 EmptyParam。

所以我认为您的代码将是:

Selection.InsertCrossReference('Heading', 7, '49', True, False, False, ' ');

(我认为wdPageNumber的值为7)。

【讨论】:

  • 这很完美!!!万分感谢!我试图将“wdPageNumber”作为参数。现在我只需要找到一种方法将“ReferenceItem”编号替换为标题文本。应该有一些东西可以给出标题的“参考项目”。再次感谢:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-07-02
  • 1970-01-01
  • 2014-01-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多