WPS office根目录在哪?_WPS加载项深入开发代码解析-2
这个系列的上一篇是一个不短的视频,是我们财应同学的出镜,这一篇我找个比较典型的场景从代码层面讲讲怎么利用ribbon控制WPS加载项和WPS自身功能。
ribbon是什么
Ribbon是一种以面板及标签页为架构的用户界面,原先出现在Microsoft Office 2007后续版本的Word、Excel和PowerPoint等组件中,后来也被运用到Windows 7的一些附加组件等其它软件中,如画图和写字板,以及Windows 8中的资源管理器。(这段儿摘自维基百科)
WPS利用ribbon做的是界面的定义,就是「标签选项卡」的这种界面。WPS加载项作为可以对WPS界面做自定义的一种扩展开发方式,也遵循ribbon的规范。以通过wpsjs创建的一个纯净的Demo为例,在Demo的根目录下有三个文件,作用如下说明:
- index.html:入口文件,WPS启动后加载WPS加载项,就以这个文件为入口
- main.js:index.html包含的,负责核心js的加载,开发者可以自主添加其他js文件
- ribbon.xml:自定义功能区定义文件,遵循ribbon的CustomUI规范。
在ribbon.xml中,有几个常用的控件,之下用代码做个说明:
<customUI
- tabs:这里控制的就是WPS界面里的功能区,如下图:
这里面常用的OA菜单开启显隐处理,用的就是getVisible这个方法, insertBeforeMso表示要在WPS自身某个tab之前显示,insertAfterMso表示在某个WPS自身tab之后显示,当前设置就是将「OA辅助」做了显示在「开始」之前。
那些用idMso控制的tab,就是WPS自身的tab,可以控制显隐。
- commands:这里控制的是WPS的自身定义的命令,例如「新建」、「保存」这样的命令,给出的也是常用的命令的idMso,可以支持控制是否可用getEnabled和做功能重定义onAction。
- contextMenus:这是可以定义一个右键菜单。
Web对话框和任务窗格
这两个就是WPS特有的两个WPS加载项提供的UI扩展方案,原理就是利用WPS内部自带的浏览器(CEF)来显示指定的网页。这里有个特性,就是WPS会在网页渲染是动态的在DOM树的window节点下注入wps这个对象,这样不论什么网页,只要是在WPS内部打开,在这个网页上都可以直接调用WPS的jsapi。
还是以wpsjs创建的Demo为例,在ui这个文件夹下:
dialog.html就是Web对话框,taskpane.html就是任务窗格,本质上他们没有区别,只不过在WPS内部显示的时候根据使用场景不同而已。
- Web对话框
这就是Demo中Web对话框的效果。这个网页可以是WPS加载项自身工程中的。
- 任务窗格
这个任务窗格就是直接加载的一个非WPS加载项工程内的网页,直接指向一个网络可达的URL即可。
这个网页的window节点下就会注入wps这个对象,可以直接使用。
大家可以留言讲讲常用的UI控制场景,也希望这篇可以给大家对于利用WPS加载项做UI界面定义做个导引。
- 开源Demo获取地址
- 强烈建议大家安装wpsjs这个工具做开发:npm i -g wpsjs
WPS office根目录在哪?_WPS加载项深入开发代码解析-2相关推荐
- wps office oa控件 痕迹_WPS加载项案例应用回顾
2019年的武汉,金山办公召开了第一届开发者大会,主题是「开放赋能.合作共赢」,2020年8月29至30日,在重庆召开了第二届,主题是「在一起.创未来」.上一届发布了WPS PC Office的WPS ...
- wps2019数据分析加载项_WPS加载项——集成创新 体验升级
在政企的各种业务中,文档作为一种高价值密度的信息载体,文档的全生命周期管理是用户自身和各类业务系统都必须关注的.尤其在当前信创快速推进的大背景下,对业务厂商和文档管理服务商都提出了不小的挑战.从政策角 ...
- wps加载项初步开发
技术选型 应公司要求,在不连外网情况下,需要完成服务器文档的预览.编辑.上传等功能.于是选用了wps客户端的加载项开发. 参考资料: wps客户端开发文档 wps客户端开发文档 wps加载项demo地 ...
- Office 加载项怎么开发
要开发 Office 加载项,首先需要满足一些系统需求,包括: 安装 Office 开发人员工具,可以在 Office 安装包中找到,也可以从 Microsoft 官网下载. 安装 Visual St ...
- WPS office根目录在哪?_WPS和office到底区别在哪?工作学习中我们该如何选择?
Office和WPS是大家都非常熟悉的两款办公软件,因此,使用Office和WPS的用户都非常多,那么,Office和WPS选择哪一些软件更好呢?关于这个问题,小编给大家分享一下来自知乎用户:给大家带 ...
- WPS office根目录在哪?_wps和office的区别是什么
wps和office经常被大家混淆为一款软件,其实这个说法并不准确,其实这两者还是存在一些区别的,那么wps和office的区别是什么?今天小编就为大家带来了wps和office有什么区别的教程,下面 ...
- WPS加载项系列(1)第一个WPS项目
前言 任何一个新技术的学习使用,一般都由demo开始,然后逐步深入直到完全掌握,这个也不例外,所以这个系列的第一篇文章主要写的是如何将官方提供的demo跑起来. 一.项目地址 官方提供的演示示例(OA ...
- wps出现安装installer_wps总出现稿纸加载项安装怎么办 - 卡饭网
安装Word2003稿纸加载项使用Word稿纸 安装Word2003稿纸加载项使用Word稿纸 默认情况下,Word2003没有设置稿纸格式的功能.不过用户可以通过安装微软提供的Word2003稿纸加 ...
- excel2007无法加载mysql_Excel2007中进行无法安装加载项的解决方法
最近在学数学模型,用规划求解来计算.以前用Excel XP,知道在工具中加载相关的宏,然后很顺利地就能求解.但是用Excel 2007就找不到北了,今天,学习啦小编就教大家在Excel2007中进行无 ...
- wpsjs 预加载项打包部署 ,安装成功后插件未能显示
wpsjs 预加载项打包部署 ,安装成功后插件未能显示. 检查方法 请检查kingsoft\wps\jsaddons该目录下的 "jsplugins.xml" 列如: C:\Use ...
最新文章
- python基础知识资料-Python基础知识汇总
- Java并发编程高级篇(十):分离任务的执行和结果的处理
- Lucene.Net(转)
- ajax调用后台java类_ajax调用java后台方法是什么
- go tcp连接_TCP漫谈之keepalive和time_wait
- Leetcode 142 Linked List Cycle II
- Linux 启动顺序
- EJB3.0技术体系---学习笔记
- 在云端开展深度学习正逢其时
- idea引不进jdk的包_idea install 时提示jdk的某个jar包的包不存在的问题
- 第一章 : JVM与体系结构
- 利用python和递归实现赶鸭子问题
- ✠OpenGL-10-增强表面细节
- 计算机英语及教学法,计算机英语教学方法探析
- 三维扫描技术在精密注塑件尺寸检测中的应用
- 参考文档:《基于多目标算法的冷热电联供型综合能源系统运行优化》
- 树莓派3B+神经计算棒实时人脸追踪机器眼
- 游戏平台如何设置公会分成
- 【作业调查题】时限:1s 空间:256m
- 搭建祥云首发最新正版代刷网最新可用源码