这是来自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&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&location=application"