Word加载项 - 查找对话框是否具有焦点?

时间:2013-11-27 18:33:58

标签: vb.net office-interop

我在VB .NET中写了一个单词加载项(使用Add-in Express,但我不认为这是相关的)。 我创建了快捷方式,但我只希望它们在文档本身处于焦点时生效,而不是对话框 - 例如“查找和替换”或其他任何内容。

如何确定对话框是否具有焦点? 即使当前选择了对话框,应用程序的“选择”属性也指向文档中的选择。我在任何地方都找不到任何“HasFocus”等价物。我的想法已经不多了:o)

谢谢!

1 个答案:

答案 0 :(得分:0)

这个解决方法对我有用:

我的加载项通过在Word应用程序的WindowActivate事件期间使用GetActiveWindow API来保留对最近激活的Word窗口的句柄的引用。这是必要的,因为在Office 2013之前,Window对象不会公开handle属性。 触发快捷方式时,我会使用相同的API将其与当前活动窗口的句柄进行比较。如果它们不匹配,我就不会继续:o)