gpt4 book ai didi

python - libreoffice 宏 - 在文本字段上切换启用可见

转载 作者:太空宇宙 更新时间:2023-11-04 02:24:48 24 4
gpt4 key购买 nike

我正在使用 python 宏对 libreoffice 编写器文件执行操作。我希望能够切换 TextField 的 EnableVisible 标志。

这意味着,双击该字段时,切换您可以使用的小标志,使其可见或不可见。

到目前为止,我在我的代码中得到了这个:

import uno

def toggle_field(field_title):
document = XSCRIPTCONTEXT.getDocument()
textfields = document.getTextFields()
enum = textfields.createEnumeration()
while enum.hasMoreElements():
tf = enum.nextElement()
if tf.VariableName == field_title:
visibility = tf.getPropertyValue('EnableVisible') #wrong
tf.EnableVisible = not visibility #wrong
tf.update() #maybe right

这个给我那个

com.sun.star.beans.UnknownPropertyException: Unknown property: Enabled (Error during invoking function toggle_field in module (...)file.py (: Unknown property: EnableVisible

此外,如果我评论第一个错误行,第二个错误行给我

com.sun.star.beans.UnknownPropertyException: Unknown property: Enabled (Error during invoking function toggle_field in module (...)file.py (: EnableVisible


更新:

tf.IsFieldDisplayed = False

tf.setPropertyValue('IsFieldDisplayed', False)

不再是未知属性,但我收到此错误消息:

com.sun.star.beans.UnknownPropertyException: IntrospectionAccessStatic_Impl::setPropertyValueByIndex(), property at index 13 is readonly (Error during invoking function toggle_field in module (...)file.py (: IntrospectionAccessStatic_Impl::setPropertyValueByIndex(), property at index 13 is readonly

这看起来不公平,因为它在文档中不是只读的,BASIC 可以修改它(https://wiki.documentfoundation.org/images/b/b0/BH5009-Macros.pdf 第 19 页)

最佳答案

经过共同研究,发现该属性名为 IsVisible:

 tf.IsVisible = not tf.IsVisible

关于python - libreoffice 宏 - 在文本字段上切换启用可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50679134/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com