从 C# 检测关于 powerpoint 形状的事件
Posted
技术标签:
【中文标题】从 C# 检测关于 powerpoint 形状的事件【英文标题】:detect events on powerpoint shapes from C# 【发布时间】:2013-04-29 22:09:50 【问题描述】:是否有可能检测到在 powerpoint 形状上发生的事件,比如箭头?
到目前为止,我发现唯一的可能性是 selecteditemchanged、beforerightclick 和 beforedoubleclick,但找不到检测其他方法,如 mouseover、resizeend 或 positionchanged。
我能够检测到 Forms.CommandButton.1 ole 对象上的点击事件,但它仅适用于 ppt 演示模式,不适用于 ppt 设计模式。
我的主要目标是将一个winform - 或一个wincontrol - 嵌入到ppt幻灯片中(不仅在幻灯片上显示它,而且将它嵌入到幻灯片中,因此可以在幻灯片索引中查看它并且用户可以播放像任何其他形状一样使用它。例如,男性它是粗体、大写、改回颜色等),但我找不到文档,而且我找到的文档没有按预期工作:
This one is about smartart, but seems to not have eventsThis one is about using Net control as OleObject, but in my case it is raising an "Error when calling COM" error
所以,如果无法在 ppt 幻灯片中嵌入 Net 控件,那么至少可以检测形状上的键和鼠标事件???
提前致谢
【问题讨论】:
在此期间您找到解决方案了吗? 另外,听起来有一种方法可以在 .net 之外的其他东西中做到这一点。那会是哪一个? 嗨@Cilvic,我们不再那样尝试了。我们最接近的方法是使用 windows 挂钩来检测屏幕上的鼠标点击,然后将其转换为办公室坐标。但是我们在办公版本和某些形状上遇到了很多麻烦。看到这个:***.com/questions/7497024/how-to-detect-mouse-clicks 谢谢你让我知道- 【参考方案1】:这个可能对你有帮助:
Detect Shape's events
【讨论】:
以上是关于从 C# 检测关于 powerpoint 形状的事件的主要内容,如果未能解决你的问题,请参考以下文章
从外部 C# 应用程序自动化 PowerPoint VBA 加载项
PowerPoint 互操作:如果完成速度过快,复制粘贴形状会崩溃