Lynn.Dou 发表于 2021-1-22 16:12:35

SpreadJS在线表格编辑器自定义功能 - 快捷键打开查找对话框

本帖最后由 dexteryao 于 2021-2-3 14:01 编辑

背景:使用Excel的用户可能会知道,按下Ctrl+F会唤起 “查找和替换”对话框。SpreadJS作为一个控件产品,原生未提供这样的API,不过我们可以二次开发实现,接下来我们就一起来学习下吧。
1. 调用 command,打开 查找对话框

打开组件版设计器,我们会看到查找对话框,如下图:



找到 唤起对话框 的命令:

调用命令,,唤起对话框:


2. 绑定快捷键 Ctrl+F

2.1 定义 command

var command = {
    canUndo: false,
    execute: function (context, options, isUndo) {
      var Commands = GC.Spread.Sheets.Commands;
      if (isUndo) {
            Commands.undoTransaction(context, options);
            return true;
      } else {
            Commands.startTransaction(context, options);

             // 打开dialog
             GC.Spread.Sheets.Designer.getCommand(GC.Spread.Sheets.Designer.CommandNames.FindDialogFind).execute(designer)

             Commands.endTransaction(context, options);
            return true;
      }
    }
};


2.2注册命令
spread.commandManager().register("openFindDialog", command);


2.3绑定快捷键
spread.commandManager().setShortcutKey(
   "openFindDialog", 70, true, false, false, false
);


这样我们就实现了:按下 Ctrl+F,打开查找对话框。

页: [1]
查看完整版本: SpreadJS在线表格编辑器自定义功能 - 快捷键打开查找对话框