新的Ribbon选项卡

这适用于可选的Designer组件附加功能。此演示展示了如何向Ribbon添加一个新的选项卡,例如“偏好”,以及如何向选项卡添加自定义选项,如常用按钮和操作。它还展示了如何隐藏其他选项卡。

此示例展示了以下内容: 如何创建一个“常用”按钮组,并将您喜欢的项目放在一个新的Ribbon选项卡中。 使用搜索和替换功能代替字体样式按钮。 您可以使用Ribbon的config属性来编辑选项卡和选项卡内的按钮组,以显示您想要的内容。只需按照以下步骤操作: 通过将config.ribbon属性设置为空数组来清除Ribbon。 创建一个新的选项卡对象,包含id、text和buttonGroups属性。 将该选项卡添加到Ribbon中。 创建一个新的菜单对象,包含label、thumbnailClass和commandGroup属性。 将该新菜单添加到刚刚创建的Ribbon选项卡中。 将现有的Ribbon配置设置为您刚刚创建的配置。
let spreadNS = GC.Spread.Sheets; let config = GC.Spread.Sheets.Designer.DefaultConfig; let designer, spread; window.onload = function () { // init initRibbon(); }; function initRibbon() { // clear ribbon config.ribbon = []; // add new ribbon tab let newTab = { id: 'operate', text: '偏好', buttonGroups: [], }; config.ribbon.unshift(newTab); // add new menu let basicMenu = { label: '常用操作', thumbnailClass: 'Frequently used operations', commandGroup: { children: [ { commands: ['formulaAutoSum'], }, { commands: ['insertTable'], }, { type: 'separator', }, { direction: 'vertical', children: [ { commands: ['fontFamily', 'fontSize', 'fontWeight', 'backColor', 'foreColor'], }, { commands: ['find', 'replace', 'setFilter'], }, ], }, { direction: 'vertical', commands: ['showHideVGridLine', 'showHideHGridLine'], }, ], }, }; config.ribbon[0].buttonGroups.unshift(basicMenu); new spreadNS.Designer.Designer(document.getElementById('ribbonHost'), config); }
<!doctype html> <html style="height:100%;font-size:14px;"> <head> <meta name="spreadjs culture" content="zh-cn" /> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <link rel="stylesheet" type="text/css" href="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets/styles/gc.spread.sheets.excel2013white.css"> <link rel="stylesheet" type="text/css" href="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets-designer/styles/gc.spread.sheets.designer.min.css"> <script src="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets/dist/gc.spread.sheets.all.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets-shapes/dist/gc.spread.sheets.shapes.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets-charts/dist/gc.spread.sheets.charts.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets-print/dist/gc.spread.sheets.print.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets-barcode/dist/gc.spread.sheets.barcode.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets-pdf/dist/gc.spread.sheets.pdf.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets-pivot-addon/dist/gc.spread.pivot.pivottables.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets-slicers/dist/gc.spread.sheets.slicers.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets-tablesheet/dist/gc.spread.sheets.tablesheet.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets-formula-panel/dist/gc.spread.sheets.formulapanel.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets-io/dist/gc.spread.sheets.io.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-excelio/dist/gc.spread.excelio.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets-resources-zh/dist/gc.spread.sheets.resources.zh.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets-designer-resources-cn/dist/gc.spread.sheets.designer.resource.cn.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/zh/purejs/node_modules/@grapecity-software/spread-sheets-designer/dist/gc.spread.sheets.designer.all.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/spread/source/js/license.js" type="text/javascript"></script> <script src="$DEMOROOT$/spread/source/js/designer/license.js" type="text/javascript"></script> <script src="app.js" type="text/javascript"></script> <link rel="stylesheet" type="text/css" href="styles.css"> </head> <body> <div class="container"> <div class="spreadSheet"> <div id="ribbonHost"></div> <div id="ss"></div> </div> </div> </body> </html>
.sample-tutorial { position: relative; height: 100%; overflow: hidden; } body { position: absolute; top: 0; bottom: 0; left: 0; right: 0; } .container { height: 100%; } .spreadSheet { height: 100%; } #ribbonHost { height: 100%; } .description { margin: 10px; width: 40%; }