可以通过重写右键菜单来实现,请参考以下代码:
- window.onload = function () {
- let designerConfig = JSON.parse(
- JSON.stringify(GC.Spread.Sheets.Designer.DefaultConfig)
- );
- let designer = new GC.Spread.Sheets.Designer.Designer(
- "gc-designer-container",
- designerConfig
- );
- let spread = designer.getWorkbook();
- let sheet = spread.getActiveSheet();
- sheet.getCell(0, 0).value("Hello World");
- let oldOpenMenu = spread.contextMenu.onOpenMenu;
- spread.contextMenu.onOpenMenu = function (
- menuData,
- itemsDataForShown,
- hitInfo,
- spread
- ) {
- oldOpenMenu.apply(this, arguments);
- console.log(itemsDataForShown);
- console.log("hitInfo", hitInfo);
- if (
- spread
- .getActiveSheet()
- .getCell(hitInfo.worksheetHitInfo.row, hitInfo.worksheetHitInfo.col)
- .value() === "Hello World"
- ) {
- itemsDataForShown.push({
- text: "添加表格",
- name: "myCmd",
- command: "myCmd",
- workArea: "viewport",
- });
- }
- };
- };
复制代码
以单元格的值是否为"Hello World"来控制“添加表格”菜单项是否显示。 |