找回密码
 立即注册

QQ登录

只需一步,快速开始

Derrick.Jiao 讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2022-5-19 17:10  /   查看:3110  /  回复:2
我们都知道,在excel中有众多模板可以供选择。是不是很眼馋?想不想将把这个功能加到我们自己的编辑器中呢?
image.png706909484.png

答案是可以的,别人有的,我们“小葡萄”也要有。
1652950619(1).png288497924.png


下面是我们实现的效果,是不是有模有样?那我们来看下这个是如何实现的吧。
image.png481343688.png

我们知道(不知道的看下前面的文章),编辑器左上角这个“文件”按钮点开之后会是一个特别大的Template,那么想要往里加东西,就需要先获取这个Template,然后按照里面的结构去添加,添加完成之后再注册回去。我们新增的Template是下面这样的一个结构。这个会在附件的custom-file-menu-panel.js文件中,记住这个“custom_item_action_1”bindingPath。

image.png371793517.png

上面的图片是怎么加进去的呢?就是通过iconClass将对应的css引入。其余大家可以通过下面的代码进行研究
  1. var fileMenuTemplate = GC.Spread.Sheets.Designer.getTemplate(
  2.   GC.Spread.Sheets.Designer.TemplateNames.FileMenuPanelTemplate
  3. );
复制代码


设计完模板之后,我们就需要重写下面的这个命令了
  1. GC.Spread.Sheets.Designer.getCommand(GC.Spread.Sheets.Designer.CommandNames.FileMenuPanel);
复制代码


通过重写execute方法,在里面判断对应的bindingPath是否一致,一致则进到这个case里面包我想要的模板加载或者逻辑添加即可。
image.png680382995.png

最后,别忘了将新的模板和命令注册回去。
下载附件即可查看完整demo。

创建加载模板按钮.zip

274.32 KB, 下载次数: 468

2 个回复

倒序浏览
nutstore
金牌服务用户   /  发表于:2022-8-4 09:49:25
沙发
在原来的应用空白模板有个dialog弹窗提示当前文档已经修改是否保存,这个方法应该如何调出?
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2022-8-4 12:09:38
板凳
nutstore 发表于 2022-8-4 09:49
在原来的应用空白模板有个dialog弹窗提示当前文档已经修改是否保存,这个方法应该如何调出?

这边看到有一个帖子发过相关问题,我让对应的同事来做进一步调研,后续有进展欢迎在下面的帖子沟通哈~
https://gcdn.grapecity.com.cn/fo ... read&tid=151713
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部