1金币
本帖最后由 jiankeyan 于 2022-9-21 14:33 编辑
代码是这样的:
但是在表单中右键的时候报错,如下图:
请问这个是怎么回事?
- spread.commandManager().register("insertRowsBehind",
- {
- canUndo: true,
- execute: function (context, options, isUndo) {
- var Commands = GC.Spread.Sheets.Commands;
- // 在此加cmd
- options.cmd = "insertRowsBehind";
- if (isUndo) {
- Commands.undoTransaction(context, options);
- return true;
- } else {
- Commands.startTransaction(context, options);
- var sheet = spread.getActiveSheet();
- var sels = sheet.getSelections();
- if (sels && sels.length > 0) {
- for (var i = 0; i < sels.length; i++) {
- var sel = sels[i];
- var row = sel.row;
- var rowCount = sel.rowCount;
- sheet.addRows(row + 1, rowCount);
- }
- }
- Commands.endTransaction(context, options);
- return true;
- }
- }
- });
- // 获取右键菜单数组
- var menuData = spread.contextMenu.menuData;
- console.log(menuData);
- // 定义一个在行头区域执行的右键菜单项
- var insertRowsBehind = {
- command: "insertRowsBehind",
- text: "向后插入行",
- // name只要不重复即可
- name: "insertRowsBehind",
- // 把自己定义好的icon class加在这里
- iconClass: "gc-spread-custom-icon",
- workArea: "viewport"
- };
- // 将自定义的项,加入到“插入行”(insertRows)之后
- menuData.forEach(function (item, index) {
- if (item && item.name === "contextMenuCut") {
- menuData.splice(index + 1, 0, insertRowsBehind);
- }
- });
复制代码
|
最佳答案
查看完整内容
这边可以提供两个demo ,一个是在Spread中修改右键菜单,使单元格背景色变为红色。
另一个是在designer中,右击行标题,会出现’向下插入行‘的菜单
|