为什么我可以通过OpenOffice中的游标对象访问文本属性?

时间:2012-01-07 17:01:40

标签: openoffice-writer openoffice-basic

我正在OpenOffice Basic for Writer中开发一个简单的脚本。我有这样的代码:

vText = ThisComponent.Text
vc = ThisComponent.CurrentController.getViewCursor()
c = vText.createTextCursorByRange(vc.getstart())
baseM = c.ParaLeftMargin

根据http://www.openoffice.org/api/docs/common/ref/com/sun/star/text/XSimpleText.html#createTextCursorByRange createTextCursorByRange返回XTextCursor类型的对象。 ParaLeftMargin是服务ParagraphProperties的属性。但我无法在本文档中找到XTextCursor如何连接到ParagraphProperties。

我的问题是 - 为什么我可以在游标对象上访问ParaLeftMargin?

1 个答案:

答案 0 :(得分:1)

你声称com.sun.star.text.XTextCursor有一个ParaLeftMargin属性,但实际上这只是一个意外。

com.sun.star.text.XTextCursor是一个由SwXTextCursor实现的接口。此实现还支持com.sun.star.style.ParagraphProperties服务,该服务提供ParaLeftMargin属性。

如果你想找出给定的UNO对象支持哪些接口/服务,调试器是最好的工具,比如xray:

http://wiki.openoffice.org/wiki/Extensions_development_basic#Xray_tool