Macros 如何使用宏在libreoffice calc中显示/隐藏工作表上的按钮?

Macros 如何使用宏在libreoffice calc中显示/隐藏工作表上的按钮?,macros,libreoffice-calc,Macros,Libreoffice Calc,我在libreoffice calc v5.1.6.2中遇到了一个小问题,因为我没有找到如何使用宏在工作表上显示/隐藏按钮 我说的是直接在工作表上的按钮,而不是对话框按钮(还没有在对话框上测试过,可能会出现同样的问题…) 因此,我可以使用以下方法启用/禁用它们: MyButton.enabled = True (or False) 在我用正确的对象填充“MyButton”之后,但是没有 MyButton.visible = False 或 尽管“visible”属性存在于编辑器中,但位于设计

我在libreoffice calc v5.1.6.2中遇到了一个小问题,因为我没有找到如何使用宏在工作表上显示/隐藏按钮

我说的是直接在工作表上的按钮,而不是对话框按钮(还没有在对话框上测试过,可能会出现同样的问题…)

因此,我可以使用以下方法启用/禁用它们:

MyButton.enabled = True (or False)
在我用正确的对象填充“MyButton”之后,但是没有

MyButton.visible = False

尽管“visible”属性存在于编辑器中,但位于设计模式中“enabled”行的正下方。那么我如何动态实现它呢?

显示了一个属性,它的名称有点不同寻常,名为
EnableVisible

oSheet=ThisComponent.CurrentController.ActiveSheet
oButton=oSheet.DrawPage.Forms.getByIndex(0.getByName)(“按钮1”)
oButton.EnableVisible=False'隐藏按钮
要使其工作,必须关闭Calc的设计模式。如果启用,则无论其可见性设置如何,都将显示所有按钮


注意:我在API文档中找不到此属性。

谢谢您的回答,不幸的是,它似乎不起作用。。。我复制粘贴了您的代码,并且按钮保持可见(我未处于设计模式)。我可以像以前一样禁用它,但不能隐藏它…它对我起了作用。有错误信息吗?
visible
的值是否更改?当您手动更改可见,然后关闭设计模式时会发生什么情况?使用自省工具(如MRI或X射线工具)验证按钮是否存在,是否具有预期名称和
EnableVisible
属性。还可以尝试从一个空的Calc文档开始并创建一个按钮。我使用了表单控件工具栏中的“按钮”。我可以使用设计器手动切换不可见的按钮。对于其余的我没有任何错误,按钮似乎有“EnableVisible”方法(无投诉)。。。我不知道我在用什么按钮,我的工具栏上只有一个按钮,它被简单地称为“按钮”。。。我会试试你的建议(x光工具,新的空表…),然后回来给你。好吧,经过一些测试,它确实可以在一个新的文档上工作。。。现在我必须找出我的代码有什么问题!谢谢@Jim KOk让它发挥作用!我在子方法中传递了错误的参数。。。很抱歉给您带来不便。
MyButton.isVisible = False