问题标签 [pyuno]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - pyuno 在 libreoffice 中缺少符号并且无法使用 python2
我已经使用 gcc 4.9.1 从 Linux 上的源代码安装了 Libreoffice 版本 6.0.4.2 当我尝试在 python2 中导入 uno 时,我收到错误消息。动态模块没有定义初始化函数(initpyuno)
但这适用于 python3。
经过调查,我发现符号 initpyuno 在 pyuno.so 中不可用。
谁能帮助我如何在图书馆中丢失符号?
python - 在 LibreOffice Calc 中将 STRING 重铸为 VALUE
我有一个 Python 类,它可以对数字进行一些货币转换和字符串格式化。它接受多态输入,但只输出一个字符串化的数字。我可以很容易地将这些字符串化数字推送到 Python 中的 LibreOffice Calc:
这实际上工作得很好,因为 Calc 中的内置货币格式可以很好地处理字符串化数字。
不起作用的是公式,或者有点不起作用。调用SUM(A1:A2)
不会看到字符串化的 A1。有一种解决方法(请原谅我来晚了,我完全忘记了,但它类似于:) =SUMRECORD(VALUE(A1:A2))
。
据我了解,每个单元格都有一个数字、字符串和公式的内存位置。该公式仅作用于VALUE
内存位置。
通过电子表格 UI,我可以在复制期间将一种单元格类型转换为另一种。为此,我只需将以下公式放入 A2 中,然后将其转换STRING(A1)
为VALUE( A2)
:
但这只能通过将一个单元格复制到另一个单元格来实现。显然,在复制期间进行转换的电子表格中有一个内部重铸功能。
我想要做的是将一个字符串化的数字写入电子表格(如上),然后从 Python 调用电子表格本机重铸函数,以便从 STRING(A1)重铸 VALUE(A1)。
如果我知道重铸函数是什么,我可以在每次字符串写入后调用它。这将使 UI 中的宏像用户期望的那样工作。
如果您的答案是:“在 Python 端进行类型转换”,我已经考虑过了,这不是我正在寻找的解决方案。
python - 如何在 LibreOffice Calc 中使用 PyUNO 更改单元格边框的 LineWidth?
我正在编写一个 Python 脚本来自动调整 LibreOffice Calc 中的单元格边框。我想我知道我需要更改什么属性,但是当我为该属性分配一个新值时,该值不会改变。
例如,我编写了这段代码来将单个 Cell 的 TopLine.LineWidth 从 0 更改为 10。
运行此代码后,我没有收到任何错误。而且我还确保我正在访问我想要修改的单元格。但是,此代码不会更改单元格的边框宽度。
我尝试通过在赋值前后打印值来进行一些调试:
有谁知道我做错了什么?
python - 为什么 desktop.getCurrentComponent() 在 PyUNO 中返回 None?
试图恢复一个名为Wavelet的 PyUNO 示例脚本,以了解当今 LO 的工作原理并重新开始。由于 LibreOffice 和 UNO 从脚本的创建时间发生了一些变化,我遇到了问题。
设法获取桌面对象。现在我想检索打开文档的组件。我该如何正确实现这一目标?desktop.getCurrentComponent()
调用None
返回。
LibreOffice 版本:6.4.6.2。
系统:Ubuntu MATE 20.04 x86_64。
代码如下:
输出:
编辑 1
libreoffice - 带列的 LibreOffice 树
我正在为 LibreOffifce 编写扩展程序。我的侧边栏上需要一棵带有列的树。(示例 - https://doc.qt.io/qt-5/qtwidgets-itemviews-simpletreemodel-example.html)
我找到了有关树控制和模块“树”的信息,例如这里 https://wiki.openoffice.org/wiki/Treecontrol https://www.openoffice.org/api/docs/common/ref/com/sun/star /awt/tree/module-ix.html
但我找不到任何关于用 columns 编写树的信息。
有一句名言“您可以提供自己的模型,该模型必须至少支持接口 com.sun.star.awt.XTreeModel。” 在“树控件”一文中,但我也找不到任何关于提供我自己的模型的信息......
如果可以为 LibreOffice 扩展提供带有列的树,请帮我查找信息和示例。