在办公室应用程序中,我希望得到用户右键单击的字词。
我能够获得Excel和Word。在outlook和PowerPoint中,我无法检测到右键单击事件。
在outlook中,我想检测右键单击邮件正文中的单词。 在功率点我想检测幻灯片内容中的右键单击。
在展望中我尝试了这些事件: ItemContextMenuDisplay, AttachmentContextMenuDisplay, FolderContextMenuDisplay, ContextMenuClose, StoreContextMenuDisplay, ViewContextMenuDisplay,
在力量点我尝试过: WindowBeforeRightClick,
有人可以帮助我使用这些事件吗?
答案 0 :(得分:0)
我将尝试回答Outlook部分。
Outlook对象模型不为此提供任何事件。唯一可行的解决方案是将控件添加到上下文菜单并处理getVisible或getEnabled回调。因此,您将了解何时将显示上下文菜单。但似乎MS没有为该菜单提供所需的ID,有关详细信息,请参阅Extending the User Interface in Outlook 2010。
请参阅Office 2013 Help Files: Office Fluent User Interface Control Identifiers
答案 1 :(得分:0)
对于PowerPoint,WindowBeforeRightClick是正确的事件。
您会发现,只有右键单击幻灯片本身,才能在该事件的处理程序中设置取消= True 。在形状或文本范围内,无法按预期工作。
解决方法是锁定屏幕并切换到不同的视图并返回,然后更新屏幕以防止出现形状/文本范围的上下文菜单。