Forge Viewer 自定义组合框/组合按钮
Posted
技术标签:
【中文标题】Forge Viewer 自定义组合框/组合按钮【英文标题】:Forge Viewer Custom Combox/ComboButton 【发布时间】:2021-02-04 03:13:34 【问题描述】:您好,我正在尝试添加自定义组合框,这是我的代码
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
不接受任何参数。那么如何创建自定义组合框?非常感谢任何帮助。谢谢
***** 参考:Forge Viewer Extension for Toolbar: How to add a custom combox
【问题讨论】:
【参考方案1】:你使用打字稿定义?
只需像这样修改它:
class ComboButton extends Button
constructor(id: string, options?: object);
addControl(button: any): void;
restoreDefault(): void;
saveAsDefault(): void;
【讨论】:
帕克斯顿说得对。 Forge Viewer 的 TypeScript 定义是手工编写的,不幸的是这是一个错字。ComboButton#addControl
方法确实接受 Button
对象作为其参数。
另外,当您遇到此类问题时,请随时向github.com/DefinitelyTyped/DefinitelyTyped/issues 报告问题(在标题中注明@types/forge-viewer
)。
谢谢各位,问题已解决。我选择不使用打字稿定义以上是关于Forge Viewer 自定义组合框/组合按钮的主要内容,如果未能解决你的问题,请参考以下文章
Autodesk Forge Viewer 中的自定义点着色器在正交摄影机上表现异常
如何在 Autodesk Forge Viewer 中通过对象的 dbid 设置对象的自定义属性?