如何将模板名称添加到libreoffice writer的状态栏?



这是来自shareconfig office.cfgmodulesswriterstatusbar

的一行文件
<statusbar:statusbaritem xlink:href=".uno:PageStyleName" statusbar:align="left" statusbar:autosize="true" statusbar:width="79"/>

我将文件复制到用户目录:config office.cfgmodulesswriterstatusbar

我只需要从文档属性显示模板名称。如。ThisComponent.getDocumentProperties () .TemplateName

但是添加这一行并没有像预期的那样工作。它创建了79像素的宽度,但不显示模板名称。

<statusbar:statusbaritem xlink:href=".uno:ThisComponent.getDocumentProperties().TemplateName" statusbar:align="left" statusbar:autosize="true" statusbar:width="79"/>

目的是在状态栏中显示当前文档的模板名称,就像样式名称一样。

更新:

我从Andrew pitonyak的"OpenOffice.org的有用宏信息"中得到了这个代码。它正在像预期的那样工作。但它不显示任何其他项目的状态栏。我需要在样式名后面加上TemplateName

Function ProgressBar
ProgressBar = ThisComponent.CurrentController.StatusIndicator
End Function
Sub StatusText()
Dim sInformation 
Dim iLen as Integer
Dim iRest As Integer
sInformation = ThisComponent.getDocumentProperties().TemplateName
iLen=Len(sInformation)
iRest=350-iLen
ProgressBar.start(sInformation+SPACE(iRest),0)
End Sub

这些是UNO调度器命令,而不是Basic代码。看起来只有少数几个可以工作,比如.uno:CharFontName.uno:FrameName。大多数UNO命令执行操作而不是获取信息。

在https://forum.openoffice.org/en/forum/viewtopic.php?t=10104,有设置状态指示器的基本宏代码:

ThisComponent.CurrentController.StatusIndicator.Start(vStatusBarText,0)

如果可以从statusbar.xml调用宏,那么语法应该是这样的:

xlink:href="vnd.sun.star.script:pythonSamples|TableSample.py$createTable?language=Python&amp;location=share" 
xlink:type="simple"

编辑:

下面是一个Basic调用的例子,来自https://ask.libreoffice.org/t/how-to-translate-the-toolbar-into-multiple-languages/42404:

xlink:href="vnd.sun.star.script:Standard.Module6.gerer_cadre_image1?language=Basic&amp;location=application"

最新更新