如何隐藏和;在dat.gui控件中显示一个文件夹?

时间:2014-06-06 09:16:13

标签: javascript dat.gui

我想隐藏dat.gui控件中的文件夹。隐藏我的意思是隐藏,而不是关闭。 我不想让用户看到文件夹名称,也不让他在隐藏时打开它。 我将根据其他选项的值以编程方式控制文件夹的可见性。

例如:

var visibility = {showFolder: true, other: 1}
var gui = new dat.GUI();
var folder = gui.addFolder('Name');
folder.add(visibility, 'other');

gui.add(visibility, 'showFolder').onChange(function (val) {
    // ???
});

我应该使用// ???而不是基于folder参数来更改val的可见性?

dat.gui是否提供此功能?或者我是不是每次想要更改文件夹的可见性时都会创建相同控件的多个版本并使用正确的元素创建一个新版本?

1 个答案:

答案 0 :(得分:0)

我知道这有点晚了,但这就是我所做的: 我在dat.gui.js中添加了以下代码,其中声明了gui的方法:

hide: function hide() {
    this.domElement.style.display = 'none';
},

show: function show() {
    this.domElement.style.display = '';
},

我希望这能帮助那些像我一样寻找同样事物的人。例如,当我从gui更改参数时,我需要隐藏gui的文件夹,这里是我如何使用它:

controller.onChange(function(value) {
            if(value==true) guiSAO.hide();
            else guiSAO.show();
});