欢迎光临
我们一直在努力

Word编程中,事件的作用和顺序-.NET教程,Asp.Net开发

建站超值云服务器,限时71元/月

在打开word一直到打开文档,这个过程中,各个发生的时间顺序会稍有不同,我们举一个常用的代码段进行解析:

dim wordapp as object

dim worddoc as object

set wordapp=createobject("word.application")

wordapp.visible=true

set worddoc=wordapp.documents.open("kk.doc")

那么,时间顺序如下:

1、application的windowactivate事件:这个比较好理解,首先word.application的窗口获得了焦点;不过不是很清楚到底是.visible=true带来的,还是createobject带来的(按照我们跟踪的结果,应该是.visible=true造成的);

2、application的documentopen事件:在采用代码打开文档的时候,相应的就发生了documentopen事件,这个事件针对document发生,所有如果需要对文档进行什么检查的话,放在这个documentopen事件里,是最恰当不过的了;

3、application的documentchange事件:这个事件不针对document发生,所以它也比较特殊,即使是在没有文档的窗口里,只要你切换了word窗口,它就会发生,但是他的发生条件是:

3.1.从一个文档切换成另外一个文档;

3.2.没有文档的窗口被激活的时候(这点比较特殊,当具备文档的窗口重新获得焦点的时候,发生的事件居然是windowactivate,而不是documentchange事件);

其他的事件,就不需要罗嗦了,这些事件中,documentopen事件发生一次,而windowactivate事件和documentchange事件经常发生;

补充:在word.application中有文档的时候,将焦点切换到其他窗口,再次回到这个word文档窗口的时候,documentchange事件不会发生;但是在word.application中没有文档的时候,每次切换回到word窗口,都会发生documentchange事件;

补充1:编写的comaddins接口中,通过wordapp.comaddins.item(progid).object=me,可以将addins编写成从外部调用的一种类型,也就是说:可以从程序外部调用addins中的公用函数。不过需要特别注意的是,如果想从js、vc里面进行调用的话,这个函数的名称最好全部用小写,否则转换上会出麻烦。

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » Word编程中,事件的作用和顺序-.NET教程,Asp.Net开发
分享到: 更多 (0)