【发布时间】:2020-07-22 13:57:38
【问题描述】:
我在 LO Calc 中有几个形状,我需要这些形状在单击鼠标时更改它们的大小:第一次单击放大形状,第二次单击恢复原始大小。
我正在尝试使用分配给这些形状的宏来执行此操作。我的问题和我的问题:如何在宏中确定单击了哪个形状?
我知道如何获取当前选中的形状:
dim doc as object
doc = ThisComponent
someVar = doc.CurrentSelection...
但是单击时没有选择形状,并且此方法不起作用。
我尝试将事件对象的参数添加到宏中:
sub ChangeSize( oEvent )
但这会产生关于参数数量错误的消息。
有没有办法在 LO Basic 中检测宏的调用者?或者也许是另一种通过鼠标单击实现大小更改的方法?
附:可以使用单独的按钮调用宏,选择需要的形状后单击该按钮,但这种方式不太方便。
编辑:正如我在下面的 cmets 中猜测的那样,所描述的任务可以通过鼠标和形状坐标来解决。我在这里找到的解决方案的关键点: How to get Document-Coordinates from a Mouse Click in an OpenOffice BASIC Macro
【问题讨论】:
标签: libreoffice libreoffice-calc libreoffice-basic