请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

waitfy

注册会员

5

主题

16

帖子

167

积分

注册会员

积分
167
waitfy
注册会员   /  发表于:2018-11-7 17:58  /   查看:3238  /  回复:3
本帖最后由 DerrickJiao 于 2020-6-15 11:19 编辑

在项目中用到了spreadjs的自定义单元格功能,后发现双击进入单元格编辑状态后,在input输入框中选中值后按ctrl+c无效。 然后查看官网中自定义单元格的例子,发现也是一样,这个是不是spreadjs的bug?或者是需要哪里配置?
官网例子地址:https://demo.grapecity.com.cn/spreadjs/SpreadJSTutorial/features/cells/cell-types/custom/purejs
spreadjs_bug.png


3 个回复

倒序浏览
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2018-11-8 11:19:31
沙发
你好,这个问题是由于自定义单元格的事件被SpreadJS拦截了。

学习指南的这个Demo,源码中有一段代码如下:

  1. FullNameCellType.prototype.isReservedKey = function(e) {
  2.             //cell type handle tab key by itself
  3.             return (e.keyCode === GC.Spread.Commands.Key.tab && !e.ctrlKey && !e.shiftKey && !e.altKey);
  4.         };
复制代码


这里是定义哪些事件是可以由用户自己处理的,你只需要将此处改为

  1. FullNameCellType.prototype.isReservedKey = function(e) {
  2.             //cell type handle tab key by itself
  3.             return (e.keyCode === GC.Spread.Commands.Key.tab && !e.ctrlKey && !e.shiftKey && !e.altKey)
  4.                 || (e.keyCode === GC.Spread.Commands.Key.c && e.ctrlKey && !e.shiftKey && !e.altKey);
  5.         };
复制代码

评分

参与人数 1满意度 +5 收起 理由
waitfy + 5

查看全部评分

回复 使用道具 举报
waitfy
注册会员   /  发表于:2018-11-8 11:24:41
板凳
KevinChen 发表于 2018-11-8 11:19
你好,这个问题是由于自定义单元格的事件被SpreadJS拦截了。

学习指南的这个Demo,源码中有一段代码如下 ...

原来是这样,已经解决了,非常感谢!
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2018-11-8 12:15:00
地板
不客气,非常高兴解决了您的问题,本帖我结贴了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部