【发布时间】:2011-10-23 23:10:20
【问题描述】:
如何捕捉 Visio 形状上的双击事件?当用户双击形状时,我想显示一些属性,但为此我首先需要捕获此事件。
非常欢迎任何建议。 非常感谢。
P.S.我使用 C# + Visio 2007 SDK。
【问题讨论】:
-
对不起,伙计们。我的意思是 Visio 形状。
如何捕捉 Visio 形状上的双击事件?当用户双击形状时,我想显示一些属性,但为此我首先需要捕获此事件。
非常欢迎任何建议。 非常感谢。
P.S.我使用 C# + Visio 2007 SDK。
【问题讨论】:
我不确定 Visio API 中是否存在可用的双击事件。我从来没有见过一个。但是,您可以通过 shapesheet 窗口设置一个形状以报告对某些代码过程的双击。要到达那里,选择一个形状,然后转到 Window->Show Shapesheet,您会看到一个类似电子表格的窗口,其中描述了该形状的几乎所有内容。
应该有一个事件部分(如果没有在灰色区域右键单击并选择“插入部分”并选择它),您可以在其中指定 EventDblClick 单元格中的 shapesheet 函数以在双击该形状时调用。您可以使用诸如 CALLTHIS 或 RUNADDON 之类的东西来获取您想要执行的代码。
不幸的是,这样做需要您在尝试观看之前设置要观看的形状。您可以以编程方式设置 EventDblClick 单元格公式,因此您可以在打开插件时执行此操作。或者您可以手动设置并提供您想要通过模板观看的形状。
您还可以观察活动 Visio.Window 对象上的 MouseUp 事件,如果在一段时间内有两个 mouseup,则将其视为双击...
可能还有其他方法,但我不知道。
【讨论】: