首页 > 解决方案 > Forge Viewer 自定义组合框/组合按钮

问题描述

嗨我正在尝试添加一个自定义组合框,这是我的代码

  addCustomCombox(parentCtrl: any) {

    //create combox
    const comboButton = new Autodesk.Viewing.UI.ComboButton('buildings');
    comboButton.setToolTip('buildings');

    //create button
    var button1 = new Autodesk.Viewing.UI.Button('show-env-bg-button');
    button1.onClick = function (e) {
      alert('test');
    };
    button1.addClass('show-env-bg-button');
    button1.setToolTip('Show Environment');

    //attach button to combox
    comboButton.addControl(button1);

    parentCtrl.addControl(comboButton)
  }

然而,我收到一个错误,comboButton.addControl()它说预期的 0 个参数。我签入了节点模块,这是 ComboButton 的功能

  class ComboButton extends Button {
    constructor(id: string, options?: object);

    addControl(): void;
    restoreDefault(): void;
    saveAsDefault(): void;
  }

addControl不接受任何参数。那么如何创建自定义组合框?非常感谢任何帮助。谢谢

**stackoverflow 参考:工具栏的 Forge 查看器扩展:如何添加自定义组合框

标签: autodesk-forgeforge

解决方案


你使用打字稿定义?

只需像这样修改它:

      class ComboButton extends Button {
        constructor(id: string, options?: object);

        addControl(button: any): void;
        restoreDefault(): void;
        saveAsDefault(): void;
      }

推荐阅读