代码之家  ›  专栏  ›  技术社区  ›  Paul-Jan

在COM加载项中替换Word的“打开文件”对话框

  •  0
  • Paul-Jan  · 技术社区  · 16 年前

    我正在写一个Word COM插件,它取代了Open&用我自己的对话框保存对话框。

    对于“保存”对话框,我正在处理应用程序事件中的documentBeforeSave事件。这个很好用。

    对于打开对话框,没有这样的事件,所以我目前正在处理打开对话框的onClick。。。菜单项,取消默认处理。如果用户确实使用了此菜单项,则此操作正常,但如果用户按下CTRL-O而不是CTRL-O,则仍会获得原始对话框。

    有没有更好的方法连接到这个对话框中?如果没有,有没有办法优雅地处理这个按键,或者我应该决定使用键盘挂钩?

    1 回复  |  直到 16 年前
        1
  •  1
  •   Paul-Jan    15 年前

    在Word2007+中,实现起来非常简单。只需通过功能区XML重新调整FileOpen命令的用途

    <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
      <commands>
        <command idMso="FileOpen" onAction="doOpen" />
      </commands>
      ...
    

    对于以前版本的Office,我从未实现过完全防弹的解决方案。