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

QQ登录

只需一步,快速开始

湖南大商帮

中级会员

57

主题

192

帖子

571

积分

中级会员

积分
571
湖南大商帮
中级会员   /  发表于:2025-3-21 17:52  /   查看:90  /  回复:3
我们产品有些特殊,需要自定义ctrl+Z,ctrl+Y这几个快捷键的功能为自己写的逻辑,不只是简单的撤回界面上的数据就完事了,注意是自定义哦,不是禁用

3 个回复

倒序浏览
Matthew.Xue
超级版主   /  发表于:2025-3-24 14:00:26
沙发
本帖最后由 Matthew.Xue 于 2025-3-24 14:01 编辑

您好,您可以参考以下代码:
  1. spread.commandManager().register("customCmdName1", {
  2.     canUndo: true,
  3.     execute: function (context, options, isUndo) {
  4.         let undoMgr = spread.undoManager()
  5.         undoMgr.undo()
  6.         let sheet = spread.getActiveSheet()
  7.         sheet.setValue(0, 0, 1)
  8.         designer.refresh()
  9.     }
  10. });
  11. spread.commandManager().setShortcutKey(
  12.     "customCmdName1", GC.Spread.Commands.Key.z, true, false, false, false
  13. );
复制代码
第一个方法是注册一个名称为customCmdName1的命令,命令的内容是执行一次undo,并在当前sheet的A1设置1。undoManager是管理undo和redo的管理器,出了undo外,还有redo等方法。

第二个是将ctrl z的快捷键设置为上方的命令,代替原先默认的ctrl z逻辑。
ctrl Y也是一样的写法,您可以尝试一下。

回复 使用道具 举报
湖南大商帮
中级会员   /  发表于:2025-3-25 10:58:12
板凳
好的,明白了,非常感谢!
回复 使用道具 举报
Matthew.Xue
超级版主   /  发表于:2025-3-25 11:35:48
地板
湖南大商帮 发表于 2025-3-25 10:58
好的,明白了,非常感谢!

好的,有问题欢迎发新帖,此贴就先关闭了~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部