基于DsoFramer开发MSWord的ocx方式的总结-阿里云开发者社区

开发者社区> 云计算> 正文

基于DsoFramer开发MSWord的ocx方式的总结

简介: 一、Dsoframer的已有问题 1. 增加接口函数ActivateWithoutFocus,激活word, 但是不抢占焦点; 在dsofauto.

一、Dsoframer的已有问题

1. 增加接口函数ActivateWithoutFocus,激活word, 但是不抢占焦点;

在dsofauto.cpp中增加接口函数ActivateWithoutFocus

 

在dsofcontrol.cpp增加函数UIActivateWithoutFocus(BOOL fForceUIActive)

 

 

2. dsofdocobj.cpp 修改IPActivateView函数

 增加activateme操作,这样当commandbar发生改变后能够及时更新


3. dsofdocobj.cpp 修改OnNotifyAppActivate函数

 一定要先设置OnFrameWindowActivate为FALSE,否则会出现在打开两个都包含word ocx的exe时,第二次加载文件后,右击菜单无法弹出的问题


4. dsofcontrol.cpp 修改函数OnAppActivationChange

 在打开弹出式IE窗口时,会出现m_fComponentActive值不准确,导致无法编辑word,需要手动激活


5. dsofcontrol.cpp修改函数ControlWindowProc

 必须加,在鼠标点击是激活控件,因为在xp上会莫名其妙收到deactive的消息,在需要鼠标点击时主动激活


6.增加接口函数UpdateView, 在增加了自定义工具栏按钮后,需要调用,否则自定义的工具栏按钮不能刷新


二、开发心得


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
云计算
使用钉钉扫一扫加入圈子
+ 订阅

时时分享云计算技术内容,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

其他文章