根据条件禁用删除键
背景:客户希望对于特定列(如第一列),禁止通过del键、backspace键对单元格进行删除。
思路:
1、自定义command,在command内部判断选中的单元格的行列信息,来决定是否执行删除操作。
2、注册该命令,并绑定del、backspace快捷键。
主要代码如下:
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);
// 第一列禁止删除
if (context.getActiveSheet().getActiveColumnIndex() != 0) {
return false
}
Commands.endTransaction(context, options);
alert("第一列禁止删除")
return true;
}
}
};
spread.commandManager().register("ban1", command);
spread.commandManager().register("ban2", command);
spread.commandManager().setShortcutKey("ban1", GC.Spread.Commands.Key.del, false, false, false, false);
spread.commandManager().setShortcutKey("ban2", GC.Spread.Commands.Key.backspace, false, false, false, false);
:i0tw: :itwn:
页:
[1]