本帖最后由 Ellia.Duan 于 2022-10-27 11:31 编辑
您好,在designer中在工具栏中点击排序,获取事件处理结果,需要重写命令,如下代码所示:
- var designer = new GC.Spread.Sheets.Designer.Designer(document.getElementById("designerHost"));
- var spread = designer.getWorkbook();
- var sheet = spread.getActiveSheet();
- let designerConfig = JSON.parse(JSON.stringify(GC.Spread.Sheets.Designer.DefaultConfig));
- var command = GC.Spread.Sheets.Designer.getCommand('sortAZ');
- var oldExecute = command.execute;
- command.execute = function (context, propertyName){
- console.log('Designer排序事件' ,context, propertyName)
- oldExecute.call(this,context, propertyName)
- }
- designerConfig.commandMap = {
- "sortAZ":command
- }
- designer.setConfig(designerConfig)
- designer.refresh();
复制代码 最后,在designer中右键菜单可以触发RangeSorting事件,
- sheet.bind(GC.Spread.Sheets.Events.RangeSorting, function (e, info) {
- console.log('Spread排序事件')
- });
复制代码
具体代码见附件
ps:如何获取命令?可以通过GC.Spread.Sheets.Designer.DefaultConfig 获取菜单栏默认设置,如下图所示,按需找command
|