WEB开发网
开发学院软件教学办公软件Word 管理侧栏——Word 2007高级应用(九) 阅读

管理侧栏——Word 2007高级应用(九)

 2008-10-14 20:18:23 来源:WEB开发网   
核心提示: 同步状态 细心观察Figure 1,你会发现,管理侧栏——Word 2007高级应用(九)(4),两个窗口的My Blogs按钮都处于按下状态,起初我以为这是因为它们都关联到同一个侧边栏,下一回,我将会从Word 2007的扩展特性入手,而此时这个侧边栏又处于显示状态,因此它们同时处于按下

同步状态

细心观察Figure 1,你会发现,两个窗口的My Blogs按钮都处于按下状态,起初我以为这是因为它们都关联到同一个侧边栏,而此时这个侧边栏又处于显示状态,因此它们同时处于按下状态就不足为奇了。然而,事情却不是这么简单,我创建一个单独的插件项目观察多个窗口中按钮的状态,发现如下两个事实:

这些按钮的按下/释放状态是共享的。当我按下其中一个窗口的My Blogs按钮并激活其它窗口时,被激活窗口的My Blogs按钮也会变成按下状态。

这些按钮的状态同步并非立即发生的。当我按下其中一个窗口的My Blogs按钮但保持当前窗口的活动状态,其它窗口的My Blogs按钮仍然保持释放状态。

不难看出,我们可以在Microsoft.Office.Interop.Word.Application.WindowActivate事件的Event Handler里做一些手脚:

管理侧栏——Word 2007高级应用(九)

当然,你必须在InternalStartup() 方法里面把它关联该事件:

this.Application.WindowActivate += new Word.ApplicationEvents4_WindowActivateEventHandler(WindowActivate);

现在,我们来看看运行效果:

管理侧栏——Word 2007高级应用(九)

图  1

管理侧栏——Word 2007高级应用(九)

图  2

如果你来回切换Figure 2的两个窗口,你会发现My Blogs按钮在每次切换时都会"闪动",这种"闪动"其实是使用WindowActivate事件修正My Blogs按钮状态的一个小小的副作用。细心的读者可能会发现,Word自带的Research侧边栏在同样的情况下也会"闪动"。

至此,侧栏问题的探讨要告一段落了。此时,有人可能会问,Word 2007在兼容MetaWeblog API上有问题,致使我们无法使用它在博客园发布带图片的文章,那么为什么我还要花费这么多精力来对它进行扩展呢?正如很多人所知道的,这个问题是由Word 2007的一个bug所致的,坊间也流传一些有效的解决办法,这恰恰说明了大家不愿放弃Word这个强大的编辑工具。下一回,我将会从Word 2007的扩展特性入手,探讨另一种可能的解决办法。

上一页  1 2 3 4 

Tags:管理 Word 高级

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接