Obj.OptionFlag &= 0xfffc;
2.2.8 Is2007 原 型: long Is2007;
功 能:判断是否Office2007,只读 参 数: 返回值:
1:是2007版本 0:不是2007版本 示 例:
//判断当前Office是不是2007版本 document.all.WebOffice1. Is2007();
2.2.9 lContinue 原 型: long lContinue;
功 能:用于NotifyWordEvent的处理函数中,可以终止相应事件的继续执行 参 数: 返回值:
1:可以继续执行(默认) 0:终止默认操作 示 例:
//禁止关闭当前的Word/Excel/Wps文档 OnNotifyWordEvent(BSTR strEventName) {
if(strEventName == “DocumentBeforeClose”) {
lContinue = 0; } }
2.3 事件
2.3.1
NotifyWordEvent 原 型: void NotifyWordEvent(BSTR strEventName); 说 明:捕获部分Word/Excel/Wps事件。
参数:strEventName?Word/Excel的事件名,可能是以下的数值
DocumentChange
DocumentBeforeClose DocumentBeforePrint DocumentBeforeSave
备注:本事件在本版本扩展到Excel和Wps的支持,且可以终止该事件的继续执行(使用属性lContinue)。
2.3.2 NotifyCtrlReady 原 型: void NotifyCtrlReady();
说 明:当控件准备完毕后触发,一般在这个事件中完成初始化的操作。
2.3.3 NotifyToolBarClick 原 型: void NotifyToolBarClick(long iIndex); 参 数:
long iIndex : 工具栏按钮ID。
ID_RETURN 32769 ID_NEW 32770 ID_OPEN 32771 ID_SAVEAS 32772 ID_FULLSCREAN 32773 ID_PRINT 32774 ID_PRINTVIEW 32775
说 明:
每个按钮都有默认的处理动作,如果不希望触发默认的处理动作,需要在此时间中设置属性lEventRet = 0;
以下实例截获了SAVEAS的按钮事件。 //1. 定义事件处理函数
//2. 截获处理事件
function WebOffice1_NotifyToolBarClick(lCmd) { if(32772==lCmd) {
document.all.WebOffice1.lEventRet = 0; } }
三、ASP例子说明
3.1 Access数据库结构
表doc
======================================== id 自动编号 DocID 文本(10) DocTitle 文本(10) DocType 文本(15) DocData 日期/时间 DocContent OLE 对象
======================================== 说明:DocContent为上传的Office文档的数据,为二进制数据类型,如果使用SQLServer请改为Image类型。
3.2 演示程序主要页面说明
config.asp 取得服务器的项目文件目录,赋值给Application对象,供接口调用 docEidt.asp 调用weboffice控件在线编辑word,并提交给savedoc.jsp页面上传保存word文档
saveDoc.asp 保存表单元素和上传的word文件
getDoc.asp 取得数据库中的记录并返回给调用它的页面 debug.htm 用于调试数据传送到saveDoc.asp页 template 用于存放红头文件的模板
3.3 开发必读
1) 调用控件的时候尽量在控件ID前加“document.all”,如:
document.all.WebOffice1
2) Javascirpt区分大小写,使用时请注意。 3) WebOffice控件为VC++6编写,控件的所有方法和参数区分大小写,请严格参考本手册。 4) 在本控件的演示程序中,有个debug.hml文件用于测试表单元素和文件上传。