【发布时间】:2019-10-08 13:19:15
【问题描述】:
在 OpenOffice / LibreOffice Calc 中,复制宏对话框的最简单方法是什么?
我已经为特定任务构建了一个,但我需要另一个只是略有不同的,并且不想从头开始构建它。我尝试将 ODS 编辑为 ZIP,并复制对话框资源,但是当我重新打开文件时,我收到一条警告说它已损坏,并且副本被自动删除。
【问题讨论】:
标签: libreoffice-calc libreoffice-basic
在 OpenOffice / LibreOffice Calc 中,复制宏对话框的最简单方法是什么?
我已经为特定任务构建了一个,但我需要另一个只是略有不同的,并且不想从头开始构建它。我尝试将 ODS 编辑为 ZIP,并复制对话框资源,但是当我重新打开文件时,我收到一条警告说它已损坏,并且副本被自动删除。
【问题讨论】:
标签: libreoffice-calc libreoffice-basic
假设您有一个 .ods 文件,其中包含一个名为 Dialog1 的嵌入式对话框。解压缩 .ods 文件并进行以下更改:
Dialog1.xml 复制并粘贴到Dialog2.xml
Dialog2.xml并将ID更改为dlg:id="Dialog2"
dialog-lb.xml并添加<library:element library:name="Dialog2"/>
META-INF/manifest.xml并添加<manifest:file-entry manifest:full-path="Dialogs/Standard/Dialog2.xml" manifest:media-type="text/xml"/>
现在压缩文件备份,确保将其压缩到META-INF 是第一级文件夹的位置。应该不会再出现有关文件损坏的警告。
如果对话框已针对多种语言进行本地化,则所有字符串 ID 都必须是唯一的。例如,&amp;241.DlgSpellSearch.Title 需要更改为&amp;242.DlgSpellReplace.Title,并且DialogStrings_es_ES.properties(以西班牙-西班牙语言环境为例)中的相应条目需要匹配。
【讨论】: